Sie sind auf Seite 1von 14

INGENIERÍA INVERSA CON SUBASSEMBLY COMPOSITOR

PARA AUTOCAD® CIVIL 3D®

SubAssembly Composer de AutoCAD Civil 3D 2013 es un software que proporciona a los


usuarios una interfaz faá cil de usar para crear complejos visualmente los SubAssembly s sin
necesidad de conocimientos de programacioá n avanzada. Aunque en ocasiones te encontraraá s
con una pizarra limpia, otras veces es posible que encuentre que necesita modificar un
SubAssembly Composer PIT archivo creado por otro usuario. SubAssembly existentes
destinados a Compositor de AutoCAD Civil 3D los usuarios, esta clase explora coá mo separar un
SubAssembly Composer diagrama de flujo y convertirlo en su propio. Usted podraá ver los
problemas y escollos que pueden hacer que sus propios diagramas de difíácil comprensioá n. Usted
tambieá n aprenderaá trucos y consejos para hacer de tus diagramas faá ciles de compartir y ser
reforzado por los companñ eros de trabajo, colegas y la comunidad Civil 3D en general.

Objetivos de aprendizaje

Al final de esta clase, usted seraá capaz de:

 Demostrar un SubAssembly Composer PIT archivo para identificar sus funciones


 Crear nuevos moá dulos para realizar funciones personalizadas, haciendo modificaciones
en los archivos PIT
 Combinar los componentes de muá ltiples ficheros a la vez PIT compuesto en un
SubAssembly con diversos elementos del flujo
 crear diagramas claros y concisos que potenciaraá la capacidad de comprender y
modificar su SubAssembly en el futuro
Autodesk SubAssembly Composer para AutoCAD® Civil 3D®

El SubAssembly Composer para AutoCAD Civil 3D ®' (en lo sucesivo referido como
SubAssembly Programa Compositor) se utiliza para crear SubAssemblies y sirve para
complementar los SubAssemblies que vienen con el Civil 3D. Esta lectura brinda un
conocimiento praá ctico del programa y la creacioá n de archivos baá sicos PKT SubAssembly. Todos
los ejemplos en esta lectura utilizan Autodesk SubAssembly Composer 2013.

Como con muchas cosas en la vida sin embargo, hay varias formas de llegar al mismo
resultado final.
Proceso de pensamiento de cada persona es uá nica y, por tanto, incluso el mismo concepto
de SubAssemblies
Venir a buscar diferente cuando se hace por una persona diferente. Mientras tanto
producen el resultado final deseado, coá mo llegar desde el punto A al punto Z en realidad no
importa. En esta lectura nos explicara coá mo crear el SubAssembly que usted necesita sin
necesariamente empezar de cero.
DESAMBLAR UN SUBASSEMBLY EXISTENTE DESDE UN PKT EXISTENTE E IDENTIFICAR SUS
FUNCIONES

Si bien a veces se partiraá de un objeto nuevo, otras veces se puede encontrar usted con la
necesidad de modificar el archivo PKT SubAssembly Composer creado por otro usuario, o
incluso creado por ti mismo, pero hace tanto tiempo que no te acuerdas de lo que hace. Hay unos
pocos procedimientos que pueden ayudar a desentranñ ar el misterio.

Examinar y manipular los ajustes y paraá metros en SubAssembly Compositor; y cavar en el


Diagrama de flujo.

Importe el SubAssembly en Civil 3D y pruebe:

Una de las mejores maneras de descubrir lo que un SubAssembly es simplemente probar.


De esta manera, se da cuenta de queá es lo que funciona y lo que no para sus necesidades. Una de
las ventajas de la prueba en Civil 3D primeramente para los SubAssembly s que tienen objetivos,
la capacidad de manipular estos es maá s realista en Civil 3D en el SubAssembly de compositor. En
el SubAssembly compositor no tiene la capacidad de analizar en funcioá n de una superficie
inclinada o superficie irregular o destino opcional para desactivar objetivos manteniendo en
objetivos previstos. Con el fin de poner a prueba estas hipoá tesis, tendraá que usar el SubAssembly
en Civil 3D.
¿Qué se les pide como parámetros de
entrada?
 ¿Son las dimensiones lo que desea?
 ¿Les pregunta que pendientes
quiere y que lado quiere?
 ¿se le dan demasiadas o no
suficientes paraá metros?
 ¿Le permite hacer todos los objetivos
que desea?

¿Qué le dan como resultado?


 ¿Que se maneje cortes y rellenos correctamente?
 ¿El enlace y los coá digos que usted desea?
Examinar y manipular los ajustes y parámetros

Similares a verla en Civil 3D tambieá n desearaá examinar


y manipular en el SubAssembly Compositor y preguntarse; a
síá mismo las mismas preguntas.

Intente introducir diferentes valores para los


paraá metros de entrada. Trate de arrastrar los paraá metros de
Destino de diferentes valores (o introducir diferentes valores
numeá ricos para los paraá metros de entrada y/o paraá metros de
Destino). Activar y desactivar los coá digos y/o comentarios.
Los comentarios se muestran entre pareá ntesis mientras los
coá digos se indican entre pareá ntesis. Como se muestra en la
figura de la derecha, observe que los colores significan coá digos comunes con víánculos y formas;
en este ejemplo, el azul es "Top", el rojo es el "Datum" y el negro es " Guiderail”.
Entrando en el diagrama de flujo

De las Líáneas de Flujo

 Tomar las cosas de una líánea a la vez. Comenzar en la parte superior y trabajar a su
manera y forma de trabajo.
 Recuerde que usted puede hacer clic en el pequenñ o triaá ngulo bandera en la parte
superior derecha de un elemento de decisioá n para mostrar el estado.
 Eliminar las flechas de conexioá n para romper el flujo de la loá gica y poco a poco su forma
de trabajo a traveá s de encontrar lo que se estaá calculando.
 Cuando una persona crea un SubAssembly que no aparece maá gicamente todos a la vez y
no se puede esperar entender todo de una sola vez.
 Para averiguar las cosas se puede anñ adir comentarios a lo largo de la forma de los
elementos que necesitan una poquito maá s de explicacioá n. Tambieá n puede resultar uá til
para agregar la descripcioá n de los paraá metros de entrada, y a medida que descubra lo que
estaá n calculando; si el original disenñ ado no proporcionoá uno ya.
En algunos elementos de secuencia no se puede "quebrar una conexioá n" como puede en
un diagrama de elementos de flujo; usted puede probar soá lo hasta un cierto punto, de modo que
en lugar que aparezca “sin conectar”, el elemento de secuencia original, se cree un elemento de
secuencia vacíáa y conectarlo en el original.
A continuacioá n, cortar y pegar los elementos en el nuevo elemento de secuencia.
Puede seleccionar varios elementos manteniendo presionada la tecla (Ctrl) mientras hace clic
con el ratoá n para seleccionar. A continuacioá n, puede utilizar la combinacioá n de teclas Ctrl X para
cortar y (Ctrl+V) para pegar. Cuando se pega cualquiera de las variables puede ser con el sufijo
(_copy). Es posible que desee eliminar el sufijo para que las referencias a estas variables no sigan
rotas.

Tambieá n puede resultar uá til para evitar una seccioá n de la loá gica y probar una seccioá n
posterior, reajustando sus flechas de conexioá n, soá lo tiene que recordar que hay que tener todos
los puntos mencionados anteriormente definido y enlaces de lo contrario va a tener errores.

Descodificar las ecuaciones y las condiciones

A veces es difíácil saber cuaá l es el valor de una ecuacioá n; si es el caá lculo o una condicioá n
que estaá emitiendo. Si se encuentra con este problema existen varios trucos que puede utilizar
para ayudar a determinar queá es con lo que usted estaá trabajando:

¿saber qué valor se calcula?: Crear un elemento de punto temporal con la ecuacioá n como el
valor del delta X o delta Y. A continuacioá n, crear un paraá metro objetivo temporal (offset o
elevacioá n) y coincidir aproximadamente. El valor desconocido se mostraraá en los paraá metros de
su destino.

¿No reconocer una función? : En el apeá ndice de


este documento, encontraraá una lista de todas
las funciones de la API que estaá n disponibles
para su uso en las ecuaciones y condiciones.
Puede ejecutar a traveá s de un SubAssembly que
alguien ha utilizado una funcioá n que no se
reconocen. La parte de la funcioá n antes del
periodo te daraá una pista de queá clase de
funciones se tendraá n que buscar (por ejemplo,
P1.elevación pertenece a la clase de punto,
mientras que baseline.elevación pertenece a la
clase de referencia).

¿Súper larga ecuación? : Recuerde que siempre


puede hacer clic en el botoá n de puntos
suspensivos junto a la ecuacioá n para abrir una
ventana independiente que se puede expandir
para ver toda la ecuacioá n. Tambieá n se puede
separar la ecuacioá n en varias líáneas mediante la tecla (Enter) como se muestra en la imagen.
Este ejemplo muestra coá mo asociar una variable (en este caso un bordillo alto) con una tabla de
valores que se basa en definir un valor de cadena que frenar tipo a utilizar.
¿No sé qué condicional debo utilizar?: Poner el condicional temporalmente en un elemento de
decisioá n, coloque un punto de elemento temporal que se encuentra en una ubicacioá n conocida
(por ejemplo, 5 unidades por encima del origen) ya sea en el lado verdadero o falso Ahora
cambiar los paraá metros y ver cuando el punto aparece o desaparece. (Por ejemplo, puede tener
el estado AP1.distancetosurface(DaylightSurface)>0, y sabraá que el verdadero lado significa
que el punto se encuentra en una condicioá n de relleno y el falso significa que el punto se
encuentra en una condicioá n de corte.

Crear nuevos SubAssemblies para realizar funciones personalizadas, haciendo


modificaciones en los archivos existentes PKT.

Una vez que se han descubierto coá mo funciona un archivo PKT, entonces usted seraá capaz
de modificarlo. Las modificaciones pueden implicar simplificaciones en el SubAssembly o anñ adir
caracteríásticas maá s complejas. Es posible que quiera agregar una shape donde no hay ni una
sola. O tal vez desea cambiar los valores de cadena para el punto o vincular los coá digos. Tal vez el
SubAssembly se creoá originalmente para trabajar en pies, pero ahora desea trabajar en pulgadas
o metros. Todos estos cambios son factibles, pero primero debe saber doá nde buscar para
realizar los cambios deseados.

Combine los componentes de múltiples archivos PKT , untos en un SubAssembly compuesto,


usando diversos elementos de flujo de trabajo

La primera cosa que hay que recordar antes de combinar partes de SubAssembly en un
compuesto es recordar que este es un SUBASSEMBLY Compositor y no un conjunto compositor
de Assembly. Usted siempre tendraá la posibilidad de combinar sus SubAssemblies en un
Assembly complejo de Civil 3D.

Un ejemplo donde es posible que desee combinar los componentes de un SubAssembly es


cuando se desea que el componente adicional en una instancia, pero no en otro, por ejemplo,
desee un eje guíáa en el relleno, pero no en el corte. Un ejemplo, en los casos en que puede que no
desee combinar componentes del SubAssembly , y los SubAssembly de la carretera con su
shoulder/daylight, porque puede llegar un momento en el que desee utilizar el SubAssembly
shoulder/daylight de otra carretera, como una cuneta.
Cuando se combina una parte de un SubAssembly con otro SubAssembly, es importante
recordar que el SubAssembly Composer no puede aceptar los nombres duplicados. Soá lo puede
haber un P2 en cualquier a lo largo de cualquier del diagrama de flujo; no puede haber otro P2
en una rama separada, simplemente no pueden coexistir, como muestran las siguientes
imaá genes. (Por supuesto, esto puede parecer un ejemplo simplificado pero puede ocurrir
faá cilmente una vez que tienes un montoá n de puntos). Es una buena idea para seleccionar a un
rango de nuá meros que usted sabe que estaá maá s allaá de lo que ya existe y modificar los nuá meros
de parte del SubAssembly que se va a copiar a ese rango de nuá meros antes de copiar y pegar, y
ayudar a evitar algunos errores.

Tambieá n puede resultar uá til pensar tiempo antes que se desee copiar los elementos a
otros moá dulos y o compartir en una secuencia o Diagrama de flujo, esto haraá que copiar y pegar
el grupo mucho maá s faá cil en lugar de tener que seleccionar cada elemento individualmente cada
vez y tener que cambiar su posicioá n despueá s de pegar en su nueva ubicacioá n.

Crea diagramas de flujos claros y concisos que mejorarán su capacidad de entender y


modificar su SubAssembly en el futuro.

Ver coá mo otras personas construir su loá gica de SubAssembly s mejoraraá .

 Utilice nombres de los paraá metros descriptivos y / o nombres de visualizacioá n de


paraá metros.
 Anñ adir descripciones de los paraá metros de entrada / salida.
 Anñ adir comentarios a puntos no obvias y enlaces; especialmente los auxiliares.
 Romper las secciones comunes de un SubAssembly en una secuencia o elemento
Diagrama de flujo.
 Definir los coá digos que se utilizaraá n a lo largo del SubAssembly como una variable, de
forma que se puede cambiar en un solo lugar y que a su vez vaya a cambiar en todos los
lugares sin necesidad de tener que buscar.
ANEXO

VB Expresiones: Matemáticas
Valores enfatizados se puede cambiar para hacer referencia al valor aplicable.

math.sin (math.pi) 0 Devuelve el seno de un aá ngulo especificado mide


en radianes
math.cos(math.pi) -1 Devuelve el coseno de un aá ngulo especificado
mide en radianes
math.tan(math.pi) 0 Devuelve la tangente de un aá ngulo especificado
mide en radianes
math.asin(1) 1.57079... Devuelve el aá ngulo medido en radianes cuyo seno
es el valor especificado
math.acos(1) 0 Devuelve el aá ngulo medido en radianes cuyo
coseno es el valor especificado
math.atan(1) 0.78539... Devuelve el aá ngulo medido en radianes cuya
tangente es el valor especificado
math.log(math.e) 1 Devuelve el (base e) logaritmo natural de un
determinado valor
math.log10(10) 1 Devuelve el logaritmo en base 10 de un valor
especificado
math.exp(1) 2.71828... Devuelve e elevado a la potencia especificada
math.pow(2,3) 8 Devuelve un valor elevado a la potencia
especificada
math.sqrt(81) 9 Devuelve la raíáz cuadrada de un valor
especificado

VB Expresiones: Lógica
Valores enfatizados se puede cambiar para hacer referencia al valor aplicable.
Se utiliza en una expresioá n VB, devuelve un valor
en funcioá n de si la condicioá n (P1.Y> P2.Y) Es
IF(P1.Y>P2.Y,2,3)
verdadera (valor de 2) O falsas(valor de 3)

Devuelve Verdadero (True) si P1.Y es mayor que


P1.Y>P2.Y
P2.Y
Devuelve Verdadero (True) si P1.Y es mayor que o
P1.Y>=P2.Y
igual a P2.Y
Devuelve Verdadero (True) si P1.Y es menor que
P1.Y<P2.Y
P2.Y
Devuelve Verdadero (True) si P1.Y es menor que o
P1.Y<=P2.Y
igual a P2.Y
P1.Y=P2.Y Devuelve Verdadero (True) si P1.Y es igual a P2.Y
Devuelve Verdadero (True) si P1.Y no es igual a
P1.Y<>P2.Y
P2.Y
Devuelve Verdadero (True) si tanto la condicioá n
(P1.Y>P2.Y)AND(P2.X>P3.X) (P1.Y> P2.Y) Y la condicioá n (P2.x> P3.X) Son
verdaderas
Devuelve Verdadero (True) siempre y cuando sea
(P1.Y>P2.Y)OR(P2.X>P3.X) la condicioá n (P1.Y> P2.Y) o la condicioá n (P2.x>
P3.X) Es verdadera
Devuelve Verdadero (True) si soá lo una de las dos
condiciones (P1.Y> P2.Y), (P2.x> P3.X) Es
(P1.Y>P2.Y)XOR(P2.X>P3.X)
Verdadero (si ambas son verdaderas o ambas son
falsas, entonces se devuelve false)

VB Expresiones: SubAssembly Compositor Aplicación Programación Interfaz (API)


Funciones
Valores enfatizados se puede cambiar para hacer referencia al elemento aplicable.
P1 .X Distancia horizontal desde el punto P1 de Origen
P1 .Y Distancia vertical desde el punto P1 de Origen
P1 .Offset Distancia horizontal desde el punto P1 a la líánea
base de Assembly
P1 .Elevacioá n Elevacioá n de punto P1 con respecto a 0
P1 . e a distancia (" P2 ") Distancia desde el punto P1 para senñ alar P2
(Siempre positivo)”Always positive”
P1 .SlopeTo(" P2 ") Pendiente de punto P1 para senñ alar P2 (Upward =
positivo, Downward = Negativo)
P1 .IsValid Punto P1 asignado y vaá lido utilizar (T / F)
P1 .Distancia e ToSurface( superficie Distancia vertical desde el punto P1 a
Objetivo ) SurfaceTarget (punto above
= Positivo, punto below= negativo)

Enlaces y Auxiliar Enlaces Clase

L1.Slope Pendiente de enlace L1


L1.length Longitud de enlace L1 (Siempre positivo)
Distancia horizontal entre el principio hasta el final del enlace
L1.Xlength L1 (Siempre positivo)
Distancia vertical entre el principio hasta el final del enlace L1
L1.Ylength (Siempre positivo)
Un punto situado en el inicio de enlace L1 (Puede ser utilizado
L1.StartPoint en la API Funciones para P1 Clase)
Un punto situado en el fin de un enlace L1 (Puede ser
L1.EndPoint utilizado en la API Funciones para P1 Clase)
L1.MaxY Elevacioá n maá xima Y a partir de puntos de un enlace
L1.MinY Obtener la elevacioá n míánima Y desde puntos de un enlace
L1.MaxInterceptY (pendiente) Aplicar la maá s alta de puntos de intercepcioá n de un enlace dado
“Slope” al inicio de otro enlace
L1.MinInterceptY (pendiente) Aplicar la interseccioá n maá s baja de los puntos de un enlace dado
“Slope” al inicio de otro enlace
Pendiente calculada como una regresioá n lineal de los puntos en
L1.LinearRegressionSlope un enlace para encontrar el mejor ajuste de pendiente entre
L1.LinearRegressionInterceptY todos
El ellos
valor Y del enlace de regresioá n lineal
L1.IsValid Enlace L1 se le asigna y vaá lido utilizar (T / F)
L1 y L2 tiene una interseccioá n, segunda entrada es un boolean
la definicioá n de la posibilidad de ampliar L1 con defecto de
L1.HasIntersection(“L2”) falsa, tercera entrada es un boolean que define la posibilidad de
L1.HasIntersection(“L2”, true, ampliar L2 con defecto de falsa (T / F)
true)
Clase con destino a OffSet

OffsetTarget.IsValid OffsetTarget se le asigna y vaá lido utilizar (T / F)


OffsetTarget.Offsett Distancia horizontal desde OffsetTarget a la líánea
base del Assembly

Clase con Destino a Elevacion

ElevationTarget.IsValid ElevationTarget se le asigna y vaá lido utilizar (T / F)


ElevationTarget.Elevation Distancia vertical desde ElevationTarget a la líánea
base del Assembly

Clases con Destino a Superficie

SurfaceTarget.IsValid SurfaceTarget se le asigna y vaá lido utilizar (T / F)

Clase de Peraltes

Carril de la izquierda dentro de la pendiente del peralte estaá


SE.HasLeftLI presente y vaá lido utilizar (T / F)
Carril de la izquierda fuera de la pendiente del peralte es
SE.HasLeftLO presente y es vaá lida para utilizar (Verdadero / Falso)
Hombro izquierdo dentro talud de peralte estaá presente y vaá lido
SE.HasLeftSI para utilizar (T / F)
Hombro izquierdo talud de peralte exterior estaá presente y
SE.HasLeftSO vaá lido utilizar (T / F)
Carril de la derecha dentro de la pendiente del peralte estaá
SE.HasRightLI presente y vaá lido para utilizar (T / F)
Carril de la derecha fuera de la pendiente del peralte estaá
SE.HasRightLO presente y vaá lido para utilizar (T / F)
Hombro derecho dentro de la pendiente del peralte estaá
SE.HasRightSI presente y vaá lido utilizar (T / F)
Hombro derecho talud de peralte exterior estaá presente y vaá lido
SE.HasRightSO utilizar (T / F)
SE.LeftLI Carril de la izquierda dentro de la pendiente del peralte
SE.LeftLO Carril izquierdo talud de peralte fuera
SE.LeftSI Hombro izquierdo dentro talud de peralte
SE.LeftSO Hombro izquierdo talud de peralte fuera
SE.RightLI Carril de la derecha dentro de la pendiente del peralte
SE.RightLO Carril de la derecha talud de peralte fuera
SE.RightSI Hombro derecho dentro de la pendiente del peralte
SE.RightSO Hombro derecho talud de peralte fuera

Base Clase (* Nota Assembly base puede o puede no ser la SubAssembly origen)
Baseline.Station Estacioá n en la líánea de base del Assembly
Baseline.Elevation Elevacioá n de la líánea de base del Assembly
Baseline.RegionStart La estacioá n en el inicio de la regioá n del corredor actual
Baseline.RegionEnd La estacioá n en el extremo de la regioá n del corredor actual
Baseline.Grade Grado de la líánea de base del Assembly
Gire a la direccioá n de la líánea de base del Assembly(Izquierda =
Baseline.TurnDirection -1, no curva = 0, Derecha = 1)

Clase de tipo Enumeración

EnumerationType.Value El valor de cadena del elemento enumeracioá n actual

SubAssembly Clase

SA.IsLayout Modo de vista previa actual es el modo de layout (T / F)

Cant Class (Pivoteo)

Cant.PivotType Meá todo Pivot asignado a la curva de corriente:


Carril lateral baja (carril izquierdo) = -1
Centro de referencia = 0
High Side Rail (tren derecha) = 1
Cant.LeftRailDeltaElevation Elevacioá n diferencial para el carril izquierdo
Cant. RightRailDeltaElevation Elevacioá n diferencial para el carril derecho
Cant.TrackWidth Ancho de víáa asignada a la alineacioá n
Cant.IsDefined El canto se ha calculado sobre la alineacioá n (T / F)

Das könnte Ihnen auch gefallen