Copyright © 2021 by K4.org
  (v.0.48.124)

A PlanarSection is a set of planar profiles formed by intersecting a plane with a solid defined by a 3D mesh. The result is a set of Profile children, possibly containing holes. Note that the section is an approximation if the mesh is an approximation, and the boundary will always consist of linear segments. So a PlanarSection of a Sphere will not result in a circle, but a polygon based on the resolution of the sphere.

Index

Rules

Profile

Profile: Child

The set of results.

Design: Profile

SectionPlane

SectionPlane: Child

A The internal result used to create the Profile children.

Design: Plane

adjustedPlanePoint

adjustedPlanePoint: Point

The display plane is centered at the bounding box center of the solid.

Flags : Cached (Note this is uncached)

Expression : // Drop the bbox center onto the plane, and use that for the shown Plane const bb = this.solid.bbox; const cen = bb.center(); const pla = R.makePlane(this.planePoint, this.planeNormal); const drop = pla.drop(cen); return drop;

plane

plane: Any

A Plane primitive. If not supplied, and planePoint and planeNormal are left, then the plane is the local XY plane, and thus can be defined by the position parameter.

Flags : Cached, Parameter (Note this is uncached)

Expression : R.makePlane(this.planePoint, this.planeNormal)

planeNormal

planeNormal: Vector

A vector which defines the plane perpendicular. This is ignored if plane is supplied directly.

Flags : Cached, Parameter (Note this is uncached)

Expression : this.unitZ

planePoint

planePoint: Point

A point which the plane passes through. This is ignored if plane is supplied directly.

Flags : Cached, Parameter (Note this is uncached)

Expression : this.origin

polygons

polygons: Array

The internal result used to create the Profile children.

Flags : cached

Expression : if (!this.solid) return []; let inter; try { inter = this.plane.intersectMesh(this.solid.meshData, this.solid.transform); } catch (e) { R.message.error(PlanarSection.polygons: section failed with '${e.message}'`); return []; }

if (inter.status==='empty') return []; if (inter.status==='regular') { return inter.polygons; } R.message.warn(PlanarSection.polygons: section failed, returned '${inter.status}'); return []; `

showPlane

showPlane: Boolean

If true, the section plane is shown.

Flags : Cached, Parameter (Note this is uncached)

Expression : false

solid

solid: Any

A solid which supports the meshData protocol, which is supported by most volumetric solids.

Flags : Cached, Parameter (Note this is uncached)

Expression : null