Theory Builder Title

Introduction

A Curve-on-Surface (CoS) is defined mathematically in the UV parameter space of the surface it lies on, and so has zero deviation from that surface.

Many Alias tools that will work with the CoS need to convert it into an xyz-space curve, and so a fitting process is used which can cause inaccuracy and added complexity, which is unacceptable for Class A modelling.

The process of fitting, and the ways of avoiding the complexity are discussed in the following sections.

CoS and Trimming

When a curve on surface is used to modify the parent surface by trimming, two tolerances are used (set in the Preferences → Construction Tolerances):

Circle examples

Trim Curve Fit

The easiest way to understand the Trim Curve Fit tolerance is to set it to a really large value and project a curve onto a surface. The CoS is 'lazy', it has fewer spans and only fits the curve shape approximately:

Circle examples

Setting it to a more appropriate, tight value gives a much better result, (there is still a small inaccuracy but it is within tolerance) :

Circle examples

Max Gap Between Curves

To succesfully trim a surface, the CoS must define a closed region. The Max Gap... tolerance decides how close adjacent CoS have to be, to be considered 'closed'.

Again, the best illustration of this is to set it to a large value. This demonstrates the problem: that if there is a gap, the trimming process bridges the gap with a small straight curve to fill the gap, which then creates a broken edge.

Circle examples

It is therefore recommended that this value to be set to a similar value to the other fitting tolerances:

Circle examples

Building Surfaces from Curves-on-Surface

Whenever we have inaccuracies in working with CoS's, it's because of the fitting process we use to convert the CoS to a 3D world space curve. And the 3D curve is needed for tools such as Square and Rail to be built from the trimmed edge or CoS.

Usually tools use the Fitting → Curve Fit Distance tolerance, but for this Square actually uses Curve Fit Distance / 10.0 - just to improve the fit even more.