Skip to content

Feature ProjectArray

DeepSOIC edited this page Jan 1, 2016 · 1 revision

Feature (document object)

ProjectArray feature transforms an existing array of placements based on proximity projection onto a shape.

Proximity projection is the point on the shape that is the nearest to the origin of the placement being projected.

ProjectArray can put the placements onto surface of the shape, or align the placements to point at the shape.

Properties

Base

Link to the array of placements to be projected.

Multisolution

'Multisolution' property sets, how to react in case multiple points of the shape are at the same minimum distance from a placement. Possible values:

  • use first (default): use the first solution.
  • use all: generate a projected placement for each solution. This may cause the output array to have more items than input ('Base') array

OrientMode

Sets, how to set the orientations of output array. Possible values:

  • keep: keep the orientation of input placement
  • along gap: align placement's X axis along proximity line. Z axis is chosen automatically, with tendency to be along global Z.
  • tangent plane: align placement's Z axis along proximity line. X axis is chosen automatically, with tendency to be along global Z.
  • along u (default): output placement's X axis is along u-tangent vector of the surface or the edge the projection is onto. For edges, that is simply along tangent vector. For faces, u tangent depends on internal parameterization of the surface (u tangent is partial derivative of surface's parametric function by variable u: tangent = d(r(u,v))/du where r(u,v) is the parametric definition of the surface). Z axis of placement is aligned along the line of proximity (coincides with face normal, if projection falls onto a face).
  • along v: same as along u, but for another parameter. Only valid for faces (edges have no second parameter).

PosElevation

Raises the projected placements away from shape by distance set by 'PosElevation'.

PosMixFraction

Allows to interpolate translational part of Placement between original ('PosMixFraction' == 1.0) and projected ('PosMixFraction' == 0.0) positions. Active only if 'TranslateMode' is mixed.

Tool

Link to shape to project placements onto. There are no limits on shape type (can be anything from a vertex to a heterogeneous compound), but some modes require the projection fall onto a face.

TranslateMode

Sets, how to set translational parts of output placements. Possible values:

  • keep: copy translations from input placements. However, PosElevation is applied, if non-zero.
  • projected (default): puts the placements onto the shape. PosElevation is applied, but 'PosMixFraction' is not.
  • mixed: puts the placements halfway between the shape and originals. 'PosMixFraction' controls the ratio of distances. 'PosElevation' is also applied, in addition to 'PosMixFraction'.

(click the title)

GUI Command (toolbar button)

"Project Array" command creates ProjectArray feature.

Select an array of placements, and a shape to project onto (the whole shape is always taken), then invoke the command. ProjectArray feature is created, with links filled in, and other properties at their defaults. Select the new feature, and edit properties to get what you want.

Clone this wiki locally