#include <lib_modeling.h>
With previous versions of Cinema 4D it was a hard to update plugin tags after modeling operations. They all had to be done manually per tool (at least in theory, not many plugins bothered!).
A solution to this problem are the tag translation messages. During Modeling::Commit() there are two points at which translations of tags can be done:
The TranslationMaps pointer is passed for the translation message data
.
A simple example is the vertex map tag. Points are the easiest to translate. Polygons are pretty much the same too. Edges are much harder since they do not have any representation.
In the modeling library they are handled by storing (in PRETRANSLATE) information about the points/polygons that form the edges and use this in TRANSLATE to match up any edge changes.
Public Member Functions | |
TranslationMaps () | |
Int32 | FindOriginalPoint (Int32 index) |
Int32 | FindOriginalPolygon (Int32 index) |
Int32 | FindOriginalPgon (Int32 index) |
Int32 | FindOriginalSegment (Int32 index) |
Int32 | FindNewPoint (Int32 index) |
Int32 | FindNewPolygon (Int32 index) |
Int32 | FindNewPgon (Int32 index) |
Int32 | FindNewSegment (Int32 index) |
Int32 | FindWeldPoint (Int32 index) |
Int32 | FindMeltPolygon (Int32 index) |
TranslationMaps | ( | ) |
Constructor.
Searches for the original (i.e old) index based on the new index. (A pure helper. The source for this function is available in lib_modeling.cpp.)
[in] | index | The new index. |
Searches for the original (i.e old) index based on the new index. (A pure helper. The source for this function is available in lib_modeling.cpp.)
[in] | index | The new index. |
Searches for the original (i.e old) index based on the new index. (A pure helper. The source for this function is available in lib_modeling.cpp.)
[in] | index | The new index. |
Searches for the original (i.e old) index based on the new index. (A pure helper. The source for this function is available in lib_modeling.cpp.)
[in] | index | The new index. |
Searches for the new index based on the original index. (A pure helper. The source for this function is available in lib_modeling.cpp.)
[in] | index | The old index. |
Searches for the new index based on the original index. (A pure helper. The source for this function is available in lib_modeling.cpp.)
[in] | index | The old index. |
Searches for the new index based on the original index. (A pure helper. The source for this function is available in lib_modeling.cpp.)
[in] | index | The old index. |
Searches for the new index based on the original index. (A pure helper. The source for this function is available in lib_modeling.cpp.)
[in] | index | The old index. |
Searches for the new index based on the original index. (A pure helper. The source for this function is available in lib_modeling.cpp.)
[in] | index | The old index. |
Searches for the new index based on the original index. (A pure helper. The source for this function is available in lib_modeling.cpp.)
[in] | index | The old index. |
Int32 m_oPointCount |
Original point count.
Int32 m_oPolygonCount |
Original polygon count.
Int32 m_oSegmentCount |
Original segment count.
Int32 m_nPointCount |
New point count.
Int32 m_nPolygonCount |
New polygon count.
Int32 m_nSegmentCount |
New segment count.
Int32 m_mPointCount |
Map point count.
Int32 m_mPolygonCount |
Map polygon count.
Int32 m_mSegmentCount |
Map segment count.
Int32 m_mWeldCount |
Map weld count.
Int32 m_mMeltCount |
Map melt count.
TransMapData* m_pPointMap |
Point translation map.
TransMapData* m_pPolygonMap |
Polygon translation map.
TransMapData* m_pPgonMap |
Pgon translation map.
TransMapData* m_pSegmentMap |
Segment translation map.
TransIndexMapData* m_pWeldMap |
Weld index translation map.
TransIndexMapData* m_pMeltMap |
Melt index translation map.
TransMapNewData* m_pNewPointMap |
New point translation map.
TransMapNewData* m_pNewPolygonMap |
New polygon translation map.
TransMapNewData* m_pNewPgonMap |
New Pgon translation map.
TransMapNewData* m_pNewSegmentMap |
New segment translation map.
TransPointInterData* m_pInterpolatedPoints |
Interpolation map.
TransPointDeltaData* m_pDeltaPoints |
Delta map.