Class Parametrics
Inheritance
Inherited Members
Namespace: CADability
Assembly: CADability.dll
Syntax
public class Parametrics
Constructors
| Improve this Doc View SourceParametrics(Shell)
Declaration
public Parametrics(Shell shell)
Parameters
| Type | Name | Description |
|---|---|---|
| Shell | shell |
Methods
| Improve this Doc View SourceModifyFilletRadius(Face[], Double)
A fillet is to be modified with a new radius. Th parameter toModify contains all relevant faces, which are either
faces where the surface is a CADability.GeoObject.ISurfaceOfArcExtrusion or a SphericalSurface. There is no need to follow
these faces, the caller is responsible for this.
Declaration
public bool ModifyFilletRadius(Face[] toModify, double newRadius)
Parameters
| Type | Name | Description |
|---|---|---|
| Face[] | toModify | |
| System.Double | newRadius |
Returns
| Type | Description |
|---|---|
| System.Boolean | true, if possible (but not guaranteed to be possible) |
ModifyRadius(Face, Double)
For faces on CylindricalSurface, ToroidalSurface, (maybe not SphericalSurface maybe some swept curve surface) this face should change its radius resp. MinorRadius.
When it is tangential in the direction of the circle to other faces (like a rounded edge is tangential to the faces of the original edge), then its position will be changed, so that it is still tangential to these faces (i.e. changing the radius of a rounded edge).
When it is tangential in the other direction (e.g. a cylinder followed by a torus segment, in a pipe or at multiple rounded edges) these tangential faces also change their radius and move to the same axis as their predecessor.
Declaration
public bool ModifyRadius(Face toModify, double newRadius)
Parameters
| Type | Name | Description |
|---|---|---|
| Face | toModify | a face from the original shell |
| System.Double | newRadius | the new radius of the surface |
Returns
| Type | Description |
|---|---|
| System.Boolean |
MoveFace(Face, GeoVector)
the provided face should be moved by the provided offset. All tangentially connected faces are moved with this face. This is the preparation and can be called multiple times with different faces and different offsets. Finally call Result(out HashSet<Face>) for the modified shell.
Declaration
public void MoveFace(Face toMove, GeoVector offset)
Parameters
| Type | Name | Description |
|---|---|---|
| Face | toMove | |
| GeoVector | offset |
MoveFaces(Dictionary<Face, GeoVector>, GeoVector)
Specifies the faces which should be moved or kept on its place. Faces to be moved kept on its place have a null-vector as the value
in the provided dictionary toMove. Other faces must be moved according to the provided vector.
Typically there are two vectors as values of toMove: one is the null-vector, the other one the movement, or both
are the half movement in opposite directions. The mainMovement is used to keep faces in place, which have surfaces
that are invariant in this direction.
Declaration
public void MoveFaces(Dictionary<Face, GeoVector> toMove, GeoVector mainMovement)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.Dictionary<Face, GeoVector> | toMove | |
| GeoVector | mainMovement |
Result(out HashSet<Face>)
Declaration
public Shell Result(out HashSet<Face> involvedFaces)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.HashSet<Face> | involvedFaces |
Returns
| Type | Description |
|---|---|
| Shell |