ParticleTraceUtils

class cee.ug.ParticleTraceUtils()

Helper functions for particle traces


Methods

computeGridPoints

cee.ug.ParticleTraceUtils.computeGridPoints(center, normal, numU, numV, groupSpacing)

Computes a grid of points based on the given point and normal and returns the array of points

Arguments
  • center (cee.Vec3Like) – The center of the grid of generated points

  • normal (cee.Vec3Like) – The normal of the surface which the grid points will be on.

  • numU (number) – Number of grid point in the U direction.

  • numV (number) – Number of grid points in the V direction.

  • groupSpacing (number) – The distance between each point in the grid.

Return type

[cee.Vec3]

Returns

An array of Vec3 points forming a grid as specified. The grid will contain numU*numV points.

Useful for generating particle trace seed points. All grid points will be in the plane specified by the given center and normal, centered around the center.

seedPointsFromPointsAndNormals

cee.ug.ParticleTraceUtils.seedPointsFromPointsAndNormals(pointArr, normalArr, modelBoundingBox, planeFilter)

Compute seed points based on the centroids of the visible element surfaces of a part.

Arguments
  • pointArr (ArrayLike[number]) – The result of a QueryPartSurfacePositions

  • normalArr (ArrayLike[number]) – Per point normals. The normal is used to nudge the seed point a bit in the opposite direction of the normal. This is to cater for the seed point being inside the volume and not outside due to numeric precision.

  • modelBoundingBox (cee.BoundingBox) – Model bounding box. Used to figure out how much to nudge the seed points to be inside the volume

  • planeFilter (cee.Plane) – If a plane is passed in this parameter, only centroids that are on or very close to this plane will be used.

Return type

[cee.Vec3]

Returns

An array of Vec3 points.