BlockMixin

Synopsis

This design is used as a mixin in other designs to define a block coordinate system, dimensions and handle points . However, it does not have any geometry of its own.

Mixins

Parameters

Name Type Description
length number Size of the Block along its local Y axis.
width number Size of the Block along its local X axis.
height number Size of the Block along its local Z axis.
v000 point Left, Front, Bottom corner.
v001 point Left, Front, Top corner.
v010 point Left, Rear, Bottom corner.
v011 point Left, Rear, Top corner.
v100 point Right, Front, Bottom corner.
v101 point Right, Front, Top corner.
v110 point Right, Rear, Bottom corner.
v111 point Right, Rear, Top corner.
eTopLeft point Center of the edge between the Top and Left sides.
eTopRight point Center of the edge between the Top and Right sides.
eTopFront point Center of the edge between the Top and Front sides.
eTopRear point Center of the edge between the Top and Rear sides.
eBottomLeft point Center of the edge between the Bottom and Left sides.
eBottomRight point Center of the edge between the Bottom and Right sides.
eBottomFront point Center of the edge between the Bottom and Front sides.
eBottomRear point Center of the edge between the Bottom and Rear sides.
eLeftFront point Center of the edge between the Left and Front sides.
eLeftRear point Center of the edge between the Left and Rear sides.
eRightFront point Center of the edge between the Right and Front sides.
eRightRear point Center of the edge between the Right and Rear sides.
fLeft point Center of the Left face.
fRight point Center of the Right face.
fFront point Center of the Front face.
fRear point Center of the Rear face.
fTop point Center of the Top face.
fBottom point Center of the Bottom face.
LocalMatingPointName name Specifies which local point to position at the MatingPoint. Can be any vertex, edge center, or face center name.
MatingPoint point The local mating point (described by LocalMatingPointName) will be positioned at this location.
XOffset number Offset in the X direction of the local mating point (described by LocalMatingPointName) from the MatingPoint
YOffset number Offset in the Y direction of the local mating point (described by LocalMatingPointName) from the MatingPoint
ZOffset number Offset in the Z direction of the local mating point (described by LocalMatingPointName) from the MatingPoint
XIndex integer When the Block is part of a BlockGroup, the index for the block within the group.
YIndex integer When the Block is part of a BlockGroup, the index for the block within the group.
ZIndex integer When the Block is part of a BlockGroup, the index for the block within the group.
matrix_index list A list of the XIndex, YIndex, and ZIndex

Rules

Name Type Description
ZDirection vector The local Z direction vector, derived from the cross product of the X and Y directions.
UnitXDirection vector This is the unit vector in the XDirection.
UnitYDirection vector This is the unit vector in the YDirection.
UnitZDirection vector This is the unit vector in the ZDirection.
OffsetVectorV000 vector Offset vector from the center of the block to vertex v000.
OffsetVectorV001 vector Offset vector from the center of the block to vertex v001.
OffsetVectorV010 vector Offset vector from the center of the block to vertex v010.
OffsetVectorV011 vector Offset vector from the center of the block to vertex v011.
OffsetVectorV100 vector Offset vector from the center of the block to vertex v100.
OffsetVectorV101 vector Offset vector from the center of the block to vertex v101.
OffsetVectorV110 vector Offset vector from the center of the block to vertex v110.
OffsetVectorV111 vector Offset vector from the center of the block to vertex v111.
OffsetVectoreTopLeft vector Offset vector from the center of the block to the eTopLeft edge center point .
OffsetVectoreTopRight vector Offset vector from the center of the block to the eTopRight edge center point .
OffsetVectoreTopFront vector Offset vector from the center of the block to the eTopFront edge center point .
OffsetVectoreTopRear vector Offset vector from the center of the block to the eTopRear edge center point .
OffsetVectoreBottomLeft vector Offset vector from the center of the block to the eBottomLeft edge center point .
OffsetVectoreBottomRight vector Offset vector from the center of the block to the eBottomRight edge center point .
OffsetVectoreBottomFront vector Offset vector from the center of the block to the eBottomFront edge center point .
OffsetVectoreBottomRear vector Offset vector from the center of the block to the eBottomRear edge center point .
OffsetVectoreLeftRear vector Offset vector from the center of the block to the eLeftRear edge center point .
OffsetVectoreLeftFront vector Offset vector from the center of the block to the eLeftFront edge center point .
OffsetVectoreRightRear vector Offset vector from the center of the block to the eRightRear edge center point .
OffsetVectoreRightFront vector Offset vector from the center of the block to the eRightFront edge center point .
OffsetVectorfTop vector Offset vector from the center of the block to the fTop face center point .
OffsetVectorfBottom vector Offset vector from the center of the block to the fBottom face center point .
OffsetVectorfRight vector Offset vector from the center of the block to the fRight face center point .
OffsetVectorfLeft vector Offset vector from the center of the block to the fLeft face center point .
OffsetVectorfFront vector Offset vector from the center of the block to the fFront face center point .
OffsetVectorfRear vector Offset vector from the center of the block to the fRear face center point .
FrameOrigin point  
center point Center point of the block.
vDirectionRear vector Local unit vector from the center pointing toward the rear face.
vDirectionFront vector Local unit vector from the center pointing toward the front face.
vDirectionLeft vector Local unit vector from the center pointing toward the left face.
vDirectionRight vector Local unit vector from the center pointing toward the right face.
vDirectionUp vector Local unit vector from the center pointing toward the top face.
vDirectionDown vector Local unit vector from the center pointing toward the bottom face.

Methods

RelativeMatingPoint( V1 As Vector, V2 As Vector, V3 As Vector ) As Point 
Returns the vertex that is in the most extreme direction indicated by V1, V2, and V3. Useful for picking a point on a BuildingBlock as defined by a relative position from another objects local coordinate system.
RelativeMatingFace( V1 As Vector, V2 As Vector, V3 As Vector ) As Point
Returns the center point of the face in the direction of the specified vector.

Group Rules

<matingPoint_localMatingPointName (MatingPoint LocalMatingPointName)> Defines the localFrame by using the XDirection and YDirection vectors as well as the frameOrigin point .

<lwh_v000 (v000)> Orients the block along the Xdirection and Ydirection vectors , with the origin being the v000 location + the offset vector from this vertex to the center of the block.

<lwh_v001 (v001)> Orients the block along the Xdirection and Ydirection vectors , with the origin being the v001 location + the offset vector from this vertex to the center of the block.

<lwh_v010 (v010)> Orients the block along the Xdirection and Ydirection vectors , with the origin being the v010 location + the offset vector from this vertex to the center of the block.

<lwh_v011 (v011)> Orients the block along the Xdirection and Ydirection vectors , with the origin being the v011 location + the offset vector from this vertex to the center of the block.

<lwh_v100 (v100)> Orients the block along the Xdirection and Ydirection vectors , with the origin being the v100 location + the offset vector from this vertex to the center of the block.

<lwh_v100 (v101)> Orients the block along the Xdirection and Ydirection vectors , with the origin being the v101 location + the offset vector from this vertex to the center of the block.

<lwh_v110 (v110)> Orients the block along the Xdirection and Ydirection vectors , with the origin being the v110 location + the offset vector from this vertex to the center of the block.

<lwh_v111 (v111)> Orients the block along the Xdirection and Ydirection vectors , with the origin being the v111 location + the offset vector from this vertex to the center of the block.

<lwh_etl (eTopLeft)> Orients the block along the XDirection and YDirection vectors , with the origin being the eTopLeft point + the offset (OffsetVectorETopLeft).

<lwh_etrt (eTopRight)> Orients the block along the XDirection and YDirection vectors , with the origin being the eTopRight point + the offset (OffsetVectorETopRight).

<lwh_etf (eTopFront)> Orients the block along the XDirection and YDirection vectors , with the origin being the eTopFront point + the offset (OffsetVectorETopFront).

<lwh_etrr (eTopRear)> Orients the block along the XDirection and YDirection vectors , with the origin being the eTopRear point + the offset (OffsetVectorETopRear).

<lwh_ebl (eBottomLeft)> Orients the block along the XDirection and YDirection vectors , with the origin being the eBottomLeft point + the offset (OffsetVectorEBottomLeft).

<lwh_ebrt (eBottomRight)> Orients the block along the XDirection and YDirection vectors , with the origin being the eBottomRight point + the offset (OffsetVectorEBottomRight).

<lwh_ebf (eBottomFront)> Orients the block along the XDirection and YDirection vectors , with the origin being the eBottomFront point + the offset (OffsetVectorEBottomFront).

<lwh_ebrr (eBottomRear)> Orients the block along the XDirection and YDirection vectors , with the origin being the eBottomRear point + the offset (OffsetVectorEBottomRear).

<lwh_lrr (eLeftRear)> Orients the block along the XDirection and YDirection vectors , with the origin being the eLeftRear point + the offset (OffsetVectorELeftRear).

<lwh_lf (eLeftFront)> Orients the block along the XDirection and YDirection vectors , with the origin being the eLeftFront point + the offset (OffsetVectorELeftFront).

<lwh_rrr (eRightRear)> Orients the block along the XDirection and YDirection vectors , with the origin being the eRightRear point + the offset (OffsetVectorERightRear).

<lwh_rtf (erightFront)> Orients the block along the XDirection and YDirection vectors , with the origin being the eRightFront point + the offset (OffsetVectorERightFront).

<lwh_f (fFront)> Orients the block along the XDirection and YDirection vectors , with the origin being the fFront point + the offset (OffsetVectorFFront).

<lwh_rr (fRear)> Orients the block along the XDirection and YDirection vectors , with the origin being the fRear point + the offset (OffsetVectorFRear).

<lwh_rt (fRight)> Orients the block along the XDirection and YDirection vectors , with the origin being the fRight point + the offset (OffsetVectorFRight).

<lwh_l (fLeft)> Orients the block along the XDirection and YDirection vectors , with the origin being the fLeft point + the offset (OffsetVectorFLeft).

<lwh_t (fTop)> Orients the block along the XDirection and YDirection vectors , with the origin being the fTop point + the offset (OffsetVectorFTop).

<lwh_b (fBottom)> Orients the block along the XDirection and YDirection vectors , with the origin being the fBottom point + the offset (OffsetVectorFBottom).

<center_only (center)> Orients the block along the XDirection and YDirection vectors , with the origin being the center: point .

Example 1

Name : blockMixin_Ex01
Design : blockMixin acDrawingDocument
Name Type Formula
height number 100
length number 100
width number 100
Child Name : x_axis
Child Design : :Cylinder
Name Type Supplied
axis vector vector(1, 0, 0)
height number length
radius number Child.height / 20
bottomPoint point point(-length/2, 0, 0)
topPoint point point(length/2, 0, 0)
color string "blue"
Child Name : y_axis
Child Design : :Cylinder
Name Type Supplied
axis vector vector(0, 1, 0)
height number width
radius number Child.height / 20
bottomPoint point point(0, -length/2, 0)
topPoint point point(0, length/2, 0)
color string "green"
Child Name : z_axis
Child Design : :Cylinder
Name Type Supplied
axis vector vector(1, 0, 0)
height number height
radius number Child.height / 20
bottomPoint point point(0, 0, -length/2)
topPoint point point(0, 0, length/2)
color string "red"

Example 2

Name : blockMixin_Ex02
Design : acDrawingDocument
Child Name : axis_1
Child Design : :blockMixin_Ex01
Name Type Supplied
origin point point(0,0,0)
Child Name : axis_2
Child Design : :blockMixin_Ex01
Name Type Supplied
fFront point axis_1.fRear
Child Name : axis_3
Child Design : :blockMixin_Ex01
Name Type Supplied
v011 point axis_1.v100
xDriection vector vector(1,1,1)
yDirextion vector vector(-1,1,1)
Child Name : axis_4
Child Design : :blockMixin_Ex01
Name Type Supplied
fFront point axis_3.fRear
referenceFrame frame axis_3.localFrame