Class AlgoInterface
Inherited Members
Namespace: UnityEngine.Pixyz.Algo
Assembly: Unity.Pixyz.SDKPlus.Runtime.dll
Syntax
public class AlgoInterface : Interface
Methods
Name | Description |
---|---|
AlignUVIslands(OccurrenceList, int, double, double, AlignmentMode) | Align with the axes the UVs of the islands |
ApplyUvTransform(OccurrenceList, Matrix4, int) | Apply a transformation matrix on texture coordinates |
AssembleCAD(OccurrenceList, double, bool) | Assemble faces of CAD shapes |
AutomaticUVMapping(OccurrenceList, int, double, double, bool, bool) | Generates the texture coordinates and automatically cut |
BackToInitialBRep(OccurrenceList) | Create the BRep shape from a Tessellated shape with Domain Patch Attributes (after tessellate) |
BakeImpostor(uint, int, int, bool, int, int, bool, bool, bool) | bakes impostors textures |
BakeMaps(OccurrenceList, OccurrenceList, BakeMapList, int, int, int, bool, string, CustomBakeMapList, double, BakingMethod, double, bool, double, getPixelValueList, bool, ImageList, bool) | Bake texture maps on meshes from self or other meshes |
BakeUV(uint, uint, int, int, double) | Bake UV from a mesh to another mesh |
BakeVertexAttributes(OccurrenceList, OccurrenceList, bool, bool, bool) | Bake vertex attributes on meshes from other meshes |
BarySmooth(OccurrenceList, int) | Smooth the tessellations by moving the vertices to the barycenter of their neighbors |
BasicRetopologize(OccurrenceList, int, bool, bool) | Replace the tessellations of the selected parts by a retopology |
CalculateNormalsInPointClouds(OccurrenceList) | calculate the normal of each point of a Point Cloud |
CheckTessellationFlags(OccurrenceList) | |
CombineMaterials(OccurrenceList, BakeOption, bool, bool) | Combine all given meshes to one mesh with one material (baked) |
CombineMeshes(OccurrenceList, BakeOption, bool) | Combine all given meshes to one mesh with one material (baked) |
CombineMeshesByMaterials(OccurrenceList, bool, MergeHiddenPartsMode) | Explode and (re)merge a set of mesh parts by visible materials |
ConfigureFunctionLogger(string, bool, bool, bool) | |
ConvertCADtoNURBS(OccurrenceList) | Convert all CAD curves/surfaces to NURBS definition |
ConvertNormalMap(OccurrenceList, uint, int, bool, bool, bool, bool, bool, int, int) | Convert an existing normal map between Object-space and Tangent-space |
ConvertSimilarOccurrencesToInstances(OccurrenceList, bool, bool, int, bool, bool, int, bool) | Create instances when there are similar parts. |
ConvexDecomposition(OccurrenceList, int, int, bool, int, double) | Explode each mesh to approximated convex decomposition |
CopyUV(OccurrenceList, int, int) | Copy an UV channel to another UV channel |
CrackCADMoebiusStrip(OccurrenceList) | Detect Moebius strip and crack them if there is somme of them in the selection |
CrackEdges(OccurrenceList, bool, double, bool) | crack polygonal edges according to given criteria |
CrackMoebiusStrips(OccurrenceList, int) | Remove moebius strip by topologically cracking them (make it orientable) |
CrackNonManifoldVertices(OccurrenceList) | Splits non-manifold vertices |
CreateBillboard(OccurrenceList, int, bool, bool, bool, bool, bool, bool, bool, bool) | Create a billboard imposter |
CreateCavityOccurrences(OccurrenceList, double, double, SmartHiddenType, uint) | Identify cavities and create occurrences to show them |
CreateFreeEdgesFromPatches(OccurrenceList) | Create free edges from patch borders |
CreateIdentifiedPatchesFromPatches(OccurrenceList) | Create identified patch from existing patch (this is useful before cloning for baking) |
CreateIndexMapFromOccurrences(OccurrenceList, int, bool) | Create an IndexMap and add an UVSet so that each mesh will have UVs refering to one different pixel of the index map and that pixel will have the value i for occurrences[i]. Warning: all occurrences will be singularized |
CreateInstancesBySimilarity(OccurrenceList, double, double, bool, bool, bool) | Create instances when there are similar parts. This can be used to repair instances or to simplify a model that has similar parts that could be instantiated instead to reduce the number of unique meshes (reduces drawcalls, GPU memory usage and file size). Using 1.0 (100%) in all similarity criteria is non destructive. Using lower values will help finding more similar parts, even if their polycount or dimensions varies a bit. |
CreateNormals(OccurrenceList, double, bool, bool) | Create normal attributes on tessellations |
CreateOcclusionMesh(OccurrenceList, CreateOccluder, double, int) | Compute an occluder or an occludee with the occurrences selected |
CreatePointCloudKDTree(OccurrenceList, int, bool) | Create a KD-Tree from some point clouds occurrence, the given occurrences are deleted (even if they contains triangles) and the KD-Tree is represented in a new occurrence sub tree |
CreateTangents(OccurrenceList, int, bool) | Create tangent attributes on tessellations |
CreateTextureAtlas(OccurrenceList) | Create a texture atlas from input occurrences textutes |
CreateVertexColorFromMaterials(OccurrenceList) | Bake vertex colors using main material color. May duplicate some vertices |
CreateVertexWeightsFromVertexColors(OccurrenceList, double, double) | Use vertex colors attributes on meshes of the given occurrence to create vertex weights attributes used by the decimation functions, the finals weights will be computed with w = offset + (red - blue) * scale |
CreateVertexWeightsFromVisibilityAttributes(OccurrenceList, double, double) | Use visibility attributes on meshes of the given occurrence to create vertex weights attributes used by the decimation functions. The finals weights will be computed with w = offset + (visibility/maxVisibility) * scale |
CreateVisibilityAttributes(OccurrenceList) | Create visibility attributes on tessellations |
CreateVisibilityInformation(OccurrenceList, SelectionLevel, int, int, double, bool, uint) | Create visilibity information on parts viewed from a set of camera automatically placed on a sphere around the scene |
CreateVisibilityInformationFromViewPoints(OccurrenceList, Point3List, Point3List, Point3List, int, double, bool, uint) | Create visilibity information on parts viewed from a given set of camera |
CreateVisibilityPatchesFromPatch(OccurrenceList) | Create visibility patches from existing patches |
Debug(OccurrenceList) | Debug function |
Decimate(OccurrenceList, double, double, double, double, bool) | reduce the polygon count by removing some vertices |
DecimateEdgeCollapse(OccurrenceList, double, double, double, double, double, double, double, bool, double, double, bool, QualitySpeedTradeoff) | reduce the polygon count by collapsing some edges to obtain an simplified mesh |
DecimatePointClouds(OccurrenceList, double) | decimate Point Cloud Occurrences according to tolerance |
DecimateTarget(OccurrenceList, DecimateOptionsSelector, UVImportanceEnum, bool, int, bool) | reduce the polygon count by collapsing some edges to obtain a target triangle count (iterative version that use less memory) |
DecimateTargetOldSchool(OccurrenceList, DecimateOptionsSelector, double, double, double, double, double, bool, bool, QualitySpeedTradeoff) | reduce the polygon count by collapsing some edges to obtain a target triangle count |
DefeatureCAD(OccurrenceList, double) | Remove some features from brep |
DeleteAttibute(uint, AttributType) | Delete designed attribute on tessellations |
DeleteBRepShapes(OccurrenceList, bool) | Delete BRep representation on parts |
DeleteFreeVertices(OccurrenceList) | Delete all free vertices of the mesh of given parts |
DeleteLines(OccurrenceList) | Delete all free line of the mesh of given parts |
DeleteNormals(OccurrenceList) | Remove normal attributes on tessellations |
DeletePatches(OccurrenceList, bool) | Delete patches attributes on tessellations |
DeletePolygonalWeightAttribute(OccurrenceList) | Delete Polygonal Weight attributes on tessellations |
DeletePolygons(OccurrenceList) | Delete all polygons of the mesh of given parts |
DeleteTangents(OccurrenceList) | Remove tangent attributes on tessellations |
DeleteTextureCoordinates(OccurrenceList, int) | Delete texture coordinates on tessellations |
DeleteVertexWeights(OccurrenceList) | Remove any existing vertex weights attributes on given occurrences |
DeleteVisibilityAttributes(OccurrenceList) | Delete visibility attributes on tessellations |
DeleteVisibilityPatches(OccurrenceList) | delete the visibility patches of given occurrences |
DualContouring(OccurrenceList, int, int, double, bool, AABB) | Replace the tessellations of the selected parts by a retopology based on a dual-contouring |
DualContouringTarget(OccurrenceList, double, double, double, bool) | Replace the tessellations of the selected parts by a retopology based on a dual-contouring, controlled by a size in millimeter |
Equilateralize(OccurrenceList, int) | Sswap edges to make triangles more equilateral |
EvalDecimateErrorForTarget(OccurrenceList, DecimateOptionsSelector, double, double, double, double, double, bool, bool) | returns the max error to set to reach a given target |
ExplodeBodies(OccurrenceList, bool) | Explode all CAD Parts by body. New parts will be placed as children of input part occurrences. |
ExplodeConnectedMeshes(OccurrenceList) | Explode connected set of polygons to parts. New parts will be placed as children of input part occurrences. |
ExplodePartByMaterials(OccurrenceList) | Explode all parts by material. New parts will be placed as children of input part occurrences. |
ExplodePatches(OccurrenceList) | Explode all parts by patch |
ExplodeVertexCount(OccurrenceList, int, int, bool) | Explode parts to respect a maximum vertex count |
ExplodeVoxel(OccurrenceList, double) | Explode parts by voxel. New parts will be placed as children of input part occurrences. |
ExtractNeutralAxis(OccurrenceList, double, bool) | Extract neutral axis from tessellations |
FillNormalMap(uint) | Fill normal map (useful after a decimation for example) |
FilterHiddenPolygons(OccurrenceList, double) | remove hidden polygons using voxels and cavities |
FlagVisibilityAttributesOnTransparents(OccurrenceList) | Add one count to all visiblility attributes (poly and patch) on transparent patches |
FlattenUV(OccurrenceList, int, int, double) | Flatten the UVs on the occurrence |
GetFittingCylinder(OccurrenceList, bool) | Returns the fitting cylinder of a set of occurrences (based on MBB) |
GetFittingSphere(OccurrenceList, bool) | Returns the fitting sphere of a set of occurrences |
GetHiddenOccurrences(OccurrenceList, int, int, double, bool, uint) | Return parts occurrences not viewed from a sphere around the scene |
GetLastError() | |
GetOptimalTextureResolution(OccurrenceList, double) | Returns the optimal resolution based on a number of texels per 3D space units (e.g : mm) |
GetRatioUV3D(OccurrenceList, RatioUV3DMode, int) | Compute the ratio between the UV and the 3D size |
GetTessellations(OccurrenceList) | returns all the tessellation of the given occurrences (only returns editable mesh, see algo.toEditableMesh) |
GetUV3dRatio(OccurrenceList) | Returns the ratio of size between UV and 3D (max value, actually at the 90th percentil) |
GetUvAabr(OccurrenceList, int) | Compute the UV AABR of the selected occurrences |
GetVisibilityStats(OccurrenceList) | returns the visibility statistics for some occurrences |
GetVoxelTessellation(DoubleList, double) | |
HiddenRemoval(OccurrenceList, SelectionLevel, int, int, double, bool, int, uint) | Delete parts, patches or polygons not viewed from a sphere around the scene |
HiddenRemovalCamera(OccurrenceList, SelectionLevel, Point3List, int, int, double, bool, int, uint) | Delete parts, patches or polygons not viewed from spheres generated with a set of camera position |
HiddenRemovalViewPoints(OccurrenceList, SelectionLevel, Point3List, Point3List, Point3List, int, double, bool, int, uint) | Delete parts, patches or polygons not viewed from a set of camera position/orientation |
HiddenSelection(OccurrenceList, int, int, double, bool, uint) | Select parts not viewed from a sphere around the scene |
IdentifyPatches(OccurrenceList, bool, double, bool, bool, bool, bool) | Create cad patches on tessellation (needed by some functions) |
InvertOrientation(OccurrenceList) | Invert the orientation of tessellation elements |
LegoDecomposition(uint, LegoBrickDefinitionList, ColorList, int, bool) | Decompose a model in a set of lego bricks |
LineToCylinderCAD(OccurrenceList, double) | Change lines into cylinders |
LineToTexture(OccurrenceList, UseColorOption, int, int) | Generate a textured quadrangle over an existing mesh of coplanar lines |
ListFeatures(OccurrenceList, bool, bool, double) | List features from tessellations |
LoopSubdivMesh(OccurrenceList, int) | Apply Loop Subdivision on Triangle-only Mesh |
MapUvOnAABB(OccurrenceList, bool, double, int, bool, bool) | Generate texture coordinates using the projection on object Axis Aligned Bounding Box |
MapUvOnBox(OccurrenceList, Box, int, bool) | Generate texture coordinates using the projection on a box |
MapUvOnCubicAABB(OccurrenceList, double, int, bool) | Generate texture coordinates using the projection on object AABB, with same scale on each axis |
MapUvOnCustomAABB(OccurrenceList, AABB, double, int, bool) | Generate texture coordinates using the projection on custom AABB |
MapUvOnCylinder(OccurrenceList, Cylinder, int, bool) | Generate texture coordinates using the projection on a cylinder |
MapUvOnFittingCylinder(OccurrenceList, int, bool, bool) | Generate texture coordinates using the projection on a fitting cylinder |
MapUvOnFittingSphere(OccurrenceList, int, bool, bool) | Generate texture coordinates using the projection on a fitting sphere |
MapUvOnMBB(OccurrenceList, bool, double, int, bool) | Generate texture coordinates using the projection on object Minimum Bounding Box |
MapUvOnPlane(OccurrenceList, Plane, int, bool) | Generate texture coordinates using the projection on a plane |
MapUvOnSphere(OccurrenceList, Sphere, int, bool) | Generate texture coordinates using the projection on a sphere |
MarchingCubes(OccurrenceList, double, ElementFilter, int, bool) | Replace the tessellations of the selected parts by a marching cube representation |
MergeUVIslands(OccurrenceList, int, double, double, double, double, double, MaxTransformationType, bool) | Minimizes the number of seams in the UV mapping |
MergeVertices(OccurrenceList, double, TopologyCategoryMask) | merge near vertices according to the given distance |
MeshComparison(uint, uint) | compare two meshes |
MeshComparisonBatch(OccurrenceList, OccurrenceList) | compare each couple of meshes and returns the maximum for each couple |
MeshIntersections(uint, uint) | Computes the intersections between the meshes of two occurrences |
MoebiusCracker(OccurrenceList) | Splits moebius ring |
NoiseMesh(OccurrenceList, double) | Apply noise to vertex positions along their normals |
NormalizeUV(OccurrenceList, int, int, bool, bool, bool) | Normalize UVs to fit in the [0-1] uv space |
OptimizeCADLoops(OccurrenceList) | Optimize CAD Face loops by merging useless loop edges |
OptimizeForRendering(OccurrenceList) | Optimize mesh for rendering (lossless, only reindexing) |
OptimizeSubMeshes(OccurrenceList) | Sort sub meshes by materials |
OptimizeTextureSize(uint, double) | Resizes scene textures based on a number of texels per 3D space units (e.g: mm) |
Orient(OccurrenceList, bool, bool, OrientStrategy) | Orient tessellation elements |
OrientFromCamera(OccurrenceList, Point3, Point3, Point3, int, double) | Properly orient all polygons in the same direction, using a specified viewpoint |
OrientFromFace() | Orient all connect polygones in the same orientation of the polygon selectionned |
OrientNormalMap(uint) | Orient a tangent space normal map (all Z positive) |
OrientNormals(OccurrenceList) | Orient existing normal according to the polygons clockwise |
ProxyMesh(OccurrenceList, double, ElementFilter, int, bool) | Replace the tessellations of the selected parts by a proxy mesh based on a voxelization |
Quadify(OccurrenceList) | Merge all triangle polygons in the meshes to quadrangles |
RelaxUV(OccurrenceList, RelaxUVMethod, int, int) | Relax UVs |
RemeshSurfacicHoles(OccurrenceList, double) | Resmesh surfacic holes of tessellations |
RemoveDegeneratedPolygons(OccurrenceList, double) | Remove some kinds of degenerated polygons |
RemoveHoles(OccurrenceList, bool, bool, bool, double, uint) | Remove some features from tessellations |
RemoveMultiplePolygon(OccurrenceList) | Remove multiple polygon |
RemoveUV(OccurrenceList, int) | Remove one or all UV channel(s) |
RemoveZFighting(OccurrenceList) | Remove Z-fighting (surfaces overlapping) by slightly shrinking the selected parts' surfaces |
RepackUV(OccurrenceList, int, bool, int, uint, bool, int, bool) | Pack existing UV (create atlas) |
RepairCAD(OccurrenceList, double, bool) | Repair CAD shapes, assemble faces, remove duplicated faces, optimize loops and repair topology |
RepairMesh(OccurrenceList, double, bool, bool) | Launch the repair process to repair a disconnected or not clean tessellation |
RepairNullNormals(OccurrenceList) | Create normal on an existing normal set when normal is null (polygons appears black) |
ReplaceBy(OccurrenceList, ReplaceByOption) | Replace geometries by other shapes, or primitives |
ReplaceByBox(OccurrenceList, ReplaceByBoxType) | Replace objects by a bounding box |
ReplaceByConvexHull(OccurrenceList) | Replace objects by convex hull |
ReplaceByPrimitive(OccurrenceList, PrimitiveShapeParameters, bool) | Replace objects by a primitive shapes |
Requadify(OccurrenceList, bool) | Advanced function to requadify a triangle tessellation coming from full quad mesh |
ResizeUVsToTextureSize(OccurrenceList, double, int) | Rescale the UV coordinates to fit the input texture size |
Retessellate(OccurrenceList, double, double, double, bool, UVGenerationMode, int, double, bool, bool) | Update the tessellated representation of each CAD part with new tessellation parameters |
Retopologize(OccurrenceList, int, bool, bool, double) | Replace the tessellations of the selected parts by a retopology of the external hull |
RetopologizeWithClusterQuadrics(OccurrenceList, double) | Replace the tessellations of the selected parts by a retopology base on cluster quadrics |
SawWithAABB(OccurrenceList, AABB, SawingMode, string, string) | Saw the mesh with an axis-aligned bounding box. New parts will be placed as children of input part occurrences. |
SawWithOBB(OccurrenceList, OBB, SawingMode, string, string) | Saw the mesh with an oriented bounding box. New parts will be placed as children of input part occurrences. |
SawWithOctree(OccurrenceList, AABB, int, int, double) | Saw and split the mesh with an octree. New parts will be placed as children of input part occurrences. |
SawWithPlane(OccurrenceList, Point3, Point3, SawingMode, string, string, double) | Saw the mesh with a plane. New parts will be placed as children of input part occurrences. |
ScaleUV(OccurrenceList, double, double, int) | Apply a scale on texture coordinates |
SegmentByDistorsion(OccurrenceList, double, double) | |
SegmentDiskFront(OccurrenceList, double, int) | Create UV patches with disk-like topology |
SelectSimilar(OccurrenceList, double, double, bool) | Selects occurrences in the whole scene that are similar to the selected occurrences. If several occurrences are selected, the selection afterwards will contain similar parts for each input occurrence. |
SeparateToManifold(OccurrenceList) | Remove non manifold edges and try to reconnect manifold groups of triangles |
SetFeatureComponentMaxIndex(OccurrenceList, int) | Remap Index map of each FeatureComponent of selected occurrences |
SewBoundary(OccurrenceList, double) | Sew boundaries between them |
SmartHiddenCreateVisibilityInformation(OccurrenceList, double, double, int, SmartHiddenType, bool, uint) | Create visilibity information on parts viewed from a set of camera automatically generated |
SmartHiddenRemoval(OccurrenceList, SelectionLevel, double, double, int, SmartHiddenType, bool, int, uint) | Delete parts, patches or polygons not viewed from a set of camera automatically generated |
SmartHiddenSelection(OccurrenceList, double, double, int, SmartHiddenType, bool, uint) | Select parts not viewed from a set of camera automatically generated |
SmartOrient(OccurrenceList, double, double, int, SmartHiddenType, bool, SmartOrientStrategy) | Properly orient all polygons in the same direction, using visibility attributes |
SmoothMesh(OccurrenceList, CostEvaluation, int, bool) | |
SmoothUV(OccurrenceList, int, int) | Smooth texture coordinates |
SplitUVForAtlas(OccurrenceList) | |
StitchUV(OccurrenceList, int) | Try to stitch existing UV islands |
SwapUvChannels(OccurrenceList, int, int) | Swap two UV channels |
Sweep(OccurrenceList, double, int, bool, bool, bool) | Extrudes a circular section along an underlying polyline (curve) |
Tessellate(OccurrenceList, double, double, double, bool, UVGenerationMode, int, double, bool, bool, bool, bool) | Create a tessellated representation from a CAD representation for each given part |
TessellatePointClouds(OccurrenceList, int, bool, bool) | Tessellate point clouds to replace the geometry with a polygonal connect mesh |
TessellateRelativelyToAABB(OccurrenceList, double, double, double, double, bool, UVGenerationMode, int, double, bool, bool, bool, bool) | Creates a tessellated representation from a CAD representation for each given part. It multiplies the length of the diagonal of the bounding box by the sagRatio. If the output value is above maxSag, then maxSag is used as tessellation value. Else if the output value is below maxSag, it is used as tessellation value. |
ToEditableMesh(OccurrenceList) | Convert all static mesh to editable mesh |
ToStaticMesh(OccurrenceList) | Convert all editable mesh to static mesh |
TransferVisibilityToPolygonalWeight(OccurrenceList, VisibilityToWeightMode) | Set Polygonal Weight Attribute from Visibility Attribute |
Triangularize(OccurrenceList) | Split all non-triangle polygons in the meshes to triangles |
VertexOffset(OccurrenceList, double) | Move the vertices by the offsset along their normal |
Voxelize(OccurrenceList, double, ElementFilter, int, bool) | Replace the tessellations of the selected parts by a voxelization of the external skin |
VoxelizePointClouds(OccurrenceList, double) | Explode point clouds to voxels |