The following blog describes the new features released in Polygonica 3.5.
Automatic seam edge generation for UV parameterisation
Polygonica has had support for calculating UV mappings for several releases, with cuts, or seams, provided by the host application. Manually placing seams whilst ensuring the cut surface conforms to a topological disc, and whilst minimising other effects such as distortion, is difficult and can require expert users.
Polygonica 3.5 introduces a new optimisation function that attempts to automatically place seams such that the mapping conforms to a topological disc, distortion is reduced and the seam visibility is minimised.
The API supports several control options including
- restrict to a region of the surface
- trade-off distortion reduction with number of seam vertices
- control over which directions are considered for computing visibility reduction
It is expected that this API will be further developed and refined over time based on requests and requirements from users.



Create quad patches from a seamless parameterisation
Seamless UV parameterisation was added in Polygonica 3.4.
In Polygonica 3.5 a new API has been added to partition the solid into quad surfaces by tracing constant U and V isolines out of singular vertices in the seamless parameterisation.
Note the result remains a mesh surface, not a mathematical freeform definition such as a NURBS. The quad patch is a group of polygons with a boundary defined of polygon edges.



As part of the Polygonica 3.6 development cycle in 2026, this will be extended further to create quad meshes from a seamless UV parameterisation. One particular goal is to support workflows that require automated reverse-engineering of topology optimisation results, although quad meshes have a wide range of other uses.
Extend a surface tangentially
The existing API to extend the open boundary of a solid has been improved to support tangential extension of a surface.
The intention of this API is not to perform advanced modelling operations, but to manipulate boundaries by small amounts such that, for example, a clean Boolean operation with the surface can be performed.
The API is very effective when used in conjunction with the boundary smoothing API added in Polygonica 3.4.



Smooth mesh deformation with large datasets.
Polygonica supports deformation of meshes using vector fields i.e. displacements defined by a point, magnitude and direction. In some workflows, such as deformation compensation for additive manufacturing, the vector fields defining a deformation can be very large.
Existing deformation types include smooth deformation which focuses on achieving a globally smooth result and radius-based smoothing, in which the deformation is defined locally based on a radius of influence defined at each field point. This allows faster processing at the expense of global smoothness.
In Polygonica 3.5 a new global interpolation deformation type has been added, which closely reproduces the results of the existing smooth deformation algorithm with typically at least an order of magnitude performance improvement. This is now the recommended default for fields of more than ten thousand vectors.



Denoising of a displacement vector field.
Depending on the source, deformation vector fields can be prone to noise and inconsistencies, such as spatially close points with large differences in direction, or points with erroneously large displacements. Such discrepancies can result in unsatisfactory results for the resulting mesh deformation.
In Polygonica 3.5 a new API has been added to denoise a vector field, as well as optionally filtering outliers and removing groups of degenerate vectors.


Support for AVX-2
In certain builds support for Intel’s Advanced Vector Extensions version 2 have been enabled. This can offer runtime improvements in some algorithms by taking advantage of the ability of some CPUs to process an instruction on multiple inputs simultaneously using low level instructions.
For compatibility reasons Polygonica queries the underlying hardware at runtime and enables this capability when supported.
Splitting of curves using a mesh
In Polygonica 3.4 the ability to perform Boolean subtractions and intersections between 3D polycurves and 3D meshes was introduced.
In some cases the application may require both the internal and external portions of the curve that has been split by the solid mesh. This can now be achieved in a single operation with a single API call, improving the performance of what was previously two separate operations.
This functionality can be useful for 3D path planning applications with large numbers of operations.
App surface guided feature detection
Polygonica’s feature detection APIs can be used to identify specific types of feature on a mesh surface – specifically:
- Machining features such as holes, pockets, islands, machined planes
- CAD features such as fillets and blends
- Label features such as embossed or engraved text
In cases where the mesh has been created directly by tessellation of a CAD surface, the application can now inform Polygonica of groups of faces that belong to a common surface patch within the CAD model. Doing so can improve the performance of feature detection. In some cases reliability of the feature detection process with respect to coordinate noise and mesh artefacts can also be improved.
Smooth point cloud surface construction for large datasets
As well as a more standard progressive mesh-fitting algorithm in which each mesh vertex is coincident with a point in the original point cloud, Polygonica’s point-cloud module supports creation of a mesh from a set of surfaces fitted to the point cloud.
In Polygonica 3.4 options were added to allow the latter approach to fit smooth surfaces which could be fitted globally, or the fit for each region could be constrained with a radius. These approaches were only performant for relatively small point clouds.
In Polygonica 3.5 this latter approach has been extended to provide an interpolated global smoothing which can fit much larger datasets within reasonable timeframes.
Query points with respect to an imprint curve
It is now possible to query the position of large numbers of points relative to a curve imprinted onto a mesh surface. Points are first projected to the nearest point on the mesh surface, after which their location with respect to the region defined by the imprint curve is classified.
Project a curve onto a solid
The existing imprint curve projection in Polygonica is aimed at wrapping a curve onto a curved surface, which is useful both for selection and for positioning, but not particularly useful for operations such a path generation and planning.
A new standard projection type has been added in which the imprint curve is projected into the part along a user-defined vector. Optionally the curve can be projected onto faces that are parallel to the projection vector.
Decompose a mesh into separate surface regions
Polygonica has long supported decomposing a mesh into multiple separate sub-meshes based on a variety of heuristics including spatial location, non-manifold geometry and convexity.
In Polygonica 3.5 the same API may now be used to decompose the mesh into surface regions of the original mesh, as opposed to creating new meshes for each separate region.
Control over registration and alignment axes
Polygonica provides a highly accurate mesh-mesh alignment and mesh-point cloud alignment solution.
From Polygonica 3.5, the translation and rotation axes allowed in the alignment can be constrained to a coordinate system defined by the application.
Profile concatenation
A new API has been added to concatenate two 2D profiles including options to merge internal loops, whilst adjusting orientations if necessary.
Query extreme points of a profile along a direction
The minimum and maximum points of a 2D profile can now be queried along a given direction.
Other more minor updates include
- Option to disable integer rounding in seamless parameterisation
- Set texture coordinates directly using the UV generator object
- Query the bounds of a UV generator object
- Query the current end point of a 2D profile, including the end point of an arc segment.
- Set and query application data on a 2D profile loop
- Set a facet tolerance for arc definitions when imprinting 2D profiles
- Colours can now be transferred from points when using point-cloud surface fitting
- Extra controls have been added to shrinkwrap to separate control of the minimum tunnel diameter from the overall accuracy of the wrap
- The name of the offending function is now returned as a string in error reporting
- A list of all solids (meshes) in a Polygonica environment can now be queried
- A range of official macros for processing 2D vectors and points have been added




