|
|
|
|
Documentation |
|
Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages Search
NL3D::CZoneSmoother Class ReferenceA class used to make Bezier patch of zones G1.
More...
#include <zone_smoother.h>
List of all members.
Detailed Description
A class used to make Bezier patch of zones G1.
-
Author:
-
Lionel Berenguier , Nevrax France
-
Date:
-
2000
Definition at line 46 of file zone_smoother.h.
Member Typedef Documentation
typedef std::map<sint, CZoneInfo> NL3D::CZoneSmoother::TZoneInfoMap [private]
|
|
Constructor & Destructor Documentation
NL3D::CZoneSmoother::CZoneSmoother |
( |
|
) |
[inline] |
|
Member Function Documentation
bool NL3D::CZoneSmoother::smoothTangent |
( |
const CVector & |
tgt, |
|
|
const CVector & |
int0, |
|
|
const CVector & |
int1, |
|
|
CVector & |
tgtres |
|
) |
[private] |
|
void NL3D::CZoneSmoother::smoothTangents |
( |
CZoneInfo |
zones[5], |
|
|
float |
angleThreshold = NLMISC::Pi/6, |
|
|
bool |
continuityC1 = false |
|
) |
|
|
|
Smooth the tangents of those zones.
Zones must be correclty welded. Only all patchs of zones[0] are parsed. But other zones may be modified on their edge (so you must save them).
NB: tangent smoothing is only done on bind 1/1. -
Parameters:
-
zones |
The 0 is the center zone to be computed. Other are the 4 zones around (no special order needed). Doesn't matter if zones[i].Patchs is NULL. Also, if a neighbor patch is not found on a edge, then no error is generated: this patch edge is not modified. nlstop if zones[0]==NULL. |
angleThreshold |
if angle beetween (patch_interior - tangent) and (neighbor_patch_interior - tangent) is above angleThreshold, no smooth is done on this tangent. Default: 30°. |
continuityC1. |
when a smooth is done on a tangent, tangent is forced such that the 2 interiors and the tangent are colinear, so continuity G1 is assured. if continuityC1 is true, then tangent is set to the middle of the interiors (continuity C1). If false, tangent is setup so that previous distance ratio are kept. |
Definition at line 67 of file zone_smoother.cpp.
References _ContinuityC1, _CosThreshold, _Zones, nlassert, and smoothTangent. |
Member Data Documentation
bool NL3D::CZoneSmoother::_ContinuityC1 [private]
|
|
float NL3D::CZoneSmoother::_CosThreshold [private]
|
|
The documentation for this class was generated from the following files:
|
|