BaseTag

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 17/01/2005 at 23:28, xxxxxxxx wrote:

User Information:
Cinema 4D Version:   9 
Platform:   Windows  ;   
Language(s) :     C++  ;

---------
Hello Everybody

I want to create Align to spline tag and then I want to
attach to an object ( a cube).
So I create a cube and then a spline object and then a
basetag object (type Taligntospline).
Here is my code:

///////
.......

Obj1=SplineObject::Alloc(3,Tcubic);
btSpline=BaseTag::Alloc(Taligntospline);
Obj2=BaseObject::Alloc(Ocube);
     
doc->InsertObject(Obj2,NULL,NULL);
pObj1=ToPoint(Obj1);
vObj1=pObj1->GetPoint();
vObj1[0]=Vector(12,4,5);
vObj1[1]=Vector(1,4,5);
vObj1[2]=Vector(2,44,2);
Obj1->Message(MSG_UPDATE);
Obj2->InsertTag(btSpline);
EventAdd(EVENT_FORCEREDRAW);

.......
///////

But I don't know what to do to assign the spline object (Obj1) to the Spline Path property of the tag object (btSpline). And also I want to know how to assign the rail path property too.

Please do me a favour!

With all my respects ...
ZawMinTun

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 18/01/2005 at 01:31, xxxxxxxx wrote:

Hello

Any help?

I search the SDK and I found this.
The two I show below are the container format for Ocube and Taligntospline.
So when I use Ocube , I code

con->SetVector(PRIM_CUBE_LEN,Vector(1,2,3));

like so.
But in CONTAINER Taligntospline
I don't know what to do about LINK.
What it does mean?
How I have to pass the data?

Maybe I have to use SetData Function.
Lend me a hand please.

Waiting ....
ZawMinTun

///////

CONTAINER Ocube
{
     NAME Ocube;
     INCLUDE Obase;

GROUP ID_OBJECTPROPERTIES
     {
          GROUP
          {
               LAYOUTGROUP; COLUMNS 2;
               GROUP
               {
                    VECTOR     PRIM_CUBE_LEN    { MIN 0 0 0; UNIT METER; CUSTOMGUI SUBDESCRIPTION; }
               }
               GROUP
               {
                    LONG    PRIM_CUBE_SUBX   { MIN 1; MAX 1000; }
                    LONG    PRIM_CUBE_SUBY   { MIN 1; MAX 1000; }
                    LONG    PRIM_CUBE_SUBZ   { MIN 1; MAX 1000; }
               }
          }
          SEPARATOR { }
          BOOL          PRIM_CUBE_SEP    { }

BOOL          PRIM_CUBE_DOFILLET { }
          REAL    PRIM_CUBE_FRAD      { PARENTID PRIM_CUBE_DOFILLET; MIN 0; UNIT METER; }
          LONG    PRIM_CUBE_SUBF   { PARENTID PRIM_CUBE_DOFILLET; MIN 1; MAX 1000; }
     }
}

////////

CONTAINER Taligntospline
{
     NAME Taligntospline;
     INCLUDE Texpression;

GROUP ID_TAGPROPERTIES
     {
          LINK      ALIGNTOSPLINETAG_LINK     { ACCEPT { Obase; } }
          LINK      ALIGNTOSPLINETAG_RAIL     { ACCEPT { Obase; } }
          BOOL     ALIGNTOSPLINETAG_TANGENTIAL { }
          
          REAL ALIGNTOSPLINETAG_POSITION { UNIT PERCENT; MIN 0.0; MAX 100.0; }
          LONG ALIGNTOSPLINETAG_SEGMENT { MIN 0; }
          LONG     ALIGNTOSPLINETAG_AXIS     { CYCLE { ALIGNTOSPLINETAG_AXIS_X; ALIGNTOSPLINETAG_AXIS_Y; ALIGNTOSPLINETAG_AXIS_Z; } }
     }
}

////////

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 18/01/2005 at 20:23, xxxxxxxx wrote:

Hello

Now I found a way and be going work on it.

Tank you all.