Ejercicio 2: Definición de una clase de objeto

Base cada clase de objeto nueva en un objeto existente. Empiece abriendo un mapa que contenga objetos típicos de la clase de objeto que ha definido ("objetos de modelos"). En este ejemplo, se abre un mapa de carreteras para definir la clase de objeto Roads.

Nota: En este aprendizaje, cada conjunto de objetos se almacena en un archivo aparte. Si los objetos están almacenados en capas dentro de un único archivo, puede definir todas las clases de objetos dentro de ese archivo. El proceso es el mismo.

Al definir una clase de objeto, puede seleccionar cualquier propiedad existente del objeto de modelo para incluirla como parte de la definición de la clase de objeto. Asimismo, puede añadir propiedades. Para cada propiedad que incluya, puede especificar un valor por defecto y un rango admitido.

Nota: En este ejercicio se utiliza el archivo de definición de clase de objeto MyDefinition.xml GUID-F6A3545C-5E3C-47F9-A996-3741B310A9D0.htm#GUID-F6A3545C-5E3C-47F9-A996-3741B310A9D0__WSFACF1429558A55DE1423658FE0B60DF92-6419-1186 que ha creado en el Ejercicio 1: Creación del archivo de definición de clases de objetos.

Para definir una clase de objeto

  1. En AutoCAD Map 3D, abra Classify_Roads.dwg. Pulse AbrirDibujo.
  2. En la ficha Explorador de mapa del Panel de tareas, haga clic con el botón derecho en Clases de objetos y, a continuación, en Asociar archivo de definición.
  3. Especifique el archivo de definición MyDefinition.xml que ha creado.
  4. Haga clic en la ficha Configuración de mapagrupo Clase de objetoDefinir. Find.
    Find

    Definir una clase de objeto seleccionando un objeto de modelo.

  5. Seleccione cualquier carretera como objeto de modelo para esta clase.
  6. En el cuadro de diálogo Definir clasificación de objeto, especifique Roads como el nombre para esta clase de objeto. Seleccione la casilla superior de la lista Tipos de objeto (AcDbEntity).

    Especificar el método de creación de objetos que deben utilizar los objetos existentes para pertenecer a esta clase de objeto.

    Todos los objetos existentes que añada a esta clase deben utilizar el tipo de objeto que active aquí. A menos que sepa a ciencia cierta que todos los objetos de carretera existentes se han creado con el método AcDbLine o AcDbCurve, es más seguro activar solo AcDbEntity.

  7. Haga clic en la ficha Lista de propiedades y active las propiedades que desea incluir en esta clase de objeto.

    Los objetos que incluya en esta clase siempre conservarán sus propias propiedades. Las propiedades que especifique aquí corresponderán a las propiedades de la clase como un todo. Seleccione las propiedades para definir los valores por defecto o los rangos admitidos, o bien para que sean editables para todos los miembros de la clase.

    Por ejemplo, para poder cambiar la capa, el tipo de línea o el color para todos los miembros de la clase Roads como grupo, seleccione esas propiedades. Puede definir los valores por defecto, cuando corresponda. Por ejemplo, puede asignar todos los miembros de la clase Roads a una capa Roads.

    Puede incluir los siguientes tipos de propiedades:

    • Propiedades generales, como color y capa
    • Propiedades variadas, como generación de tipo de línea
    • Propiedades de objeto, como nombre de calle (ST_NAME)

    Especificar las propiedades para los objetos en esta clase de objeto y cualquier valor por defecto para dichas propiedades.

    La siguiente tabla muestra una sugerencia de conjunto de propiedades y valores Generales para la clase Roads.

    Propiedad Valor
    Propiedades generales  
    Color Rojo
    Capa Schema_Roads
    Tipo de línea Sin valor
    Grosor de línea 0.13
  8. Especifique los campos de datos de objeto y sus valores.

    Para los campos de datos de objeto, borre los valores específicos para el objeto de modelo que ha seleccionado. Por ejemplo, incluya las propiedades NAME y ST_NAME para garantizar que todas las carreteras nuevas que ha creado contienen dichas propiedades. Suprima los valores que aparecen, puesto que cada nuevo nombre de carretera variará respecto al nombre del objeto de modelo.

    Por ejemplo, haga clic en la propiedad ST_NAME y observe sus valores. El valor por defecto para el nombre de calle es el nombre del objeto de modelo. Este valor es incorrecto para casi todas las carreteras nuevas que haya creado. Seleccione el valor y suprímalo.

    Los objetos asignados a esta clase tienen una propiedad ST_NAME, pero el valor será el nombre para dicha carretera (como se guarda en sus propiedades de objeto). Si no hay valores, la propiedad se queda en blanco. La siguiente tabla muestra una sugerencia de conjunto de propiedades y valores OD:Schema_Roads para la clase Roads.

    Propiedad Valor
    Autogenerated_SDF_ID Sin valor
    LENGTH Sin valor
    NAME Sin valor
    PREFIX Sin valor
    SEG_ID Sin valor
    ST_NAME Sin valor
    ST_TYPE Sin valor
    SUFFIX Sin valor
    TIPO Sin valor
  9. Para añadir una nueva propiedad que especifique el número de carriles de una carretera, realice las siguientes acciones:
    • Haga clic en Nueva propiedad.

      Definir cualquier propiedad personalizada para la clase de objeto.

    • Para Propiedad, escriba NumberLanes y haga clic en Aceptar.

      NumberLanes se activa y selecciona.

  10. Especifique NumberLanes como número entero comprendido entre 1 y 6, siendo 2 el valor por defecto:
    • Para Tipo, seleccione Entero.
    • Para Rango, escriba [1,6].
    • Para Por defecto, escriba 2.
  11. Haga clic en la ficha Parámetros de clase. Para Método de creación, seleccione Polilínea.

    Seleccione el Método de creación para los objetos nuevos que se creen en esta clase de objeto.

    Cuando utilice esta clase para crear una carretera, utilice una Polilínea para crearla. Los objetos existentes que añada a esta clase no tienen que ser polilíneas.

  12. Haga clic en Guardar definición.
  13. Deje abierto Classify_Roads.dwg.

Para continuar con el aprendizaje, vaya al Ejercicio 3: Adición de clases de objetos al archivo de definición.