ut_project.c File Reference


Detailed Description

Project objects UPRJ_.

=====================================================
Liste_Funktionen_Beginn:

UPRJ_def__           init projection with target & projectionDirection

UPRJ_app__           apply prj to struct (nicht ObjGX)
UPRJ_app_obj         apply transf. to to object (ObjGX-tree)
UPRJ_app_oTab        apply transf. to ObjGX-tabl

Liste_Funktionen_Ende:
=====================================================

#include "../xa/MS_Def0.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include "../ut/ut_geo.h"
#include "../gr/ut_UI.h"

Functions

int UPRJ_def__ (int typ, void *target, Vector *vc1)
int UPRJ_app_pt (Point *p2, Point *p1)
int UPRJ_app_vc (Vector *v2, Vector *v1)
int UPRJ_app_ci (CurvElli *e2, Circ *c1)
int UPRJ_app_el (CurvElli *eo, CurvElli *ei)
int UPRJ_app_plg (CurvPoly *cvo, CurvPoly *cvi, Memspc *objSpc)
int UPRJ_app_bsp (CurvBSpl *cvo, CurvBSpl *cvi, Memspc *objSpc)
int UPRJ_app__ (void *objo, int *otyp, int *oSiz, int iNr, void *obji, int ityp, Memspc *objSpc)
int UPRJ_app_obj (void *objo, int *oSiz, void *obji, Memspc *objSpc)
int UPRJ_app_oTab (void *objo, int *oSiz, void *obji, Memspc *objSpc)

Variables

static int prj_typ
static void * prj_tg
static Vector prj_vc


Function Documentation

int UPRJ_def__ ( int  typ,
void *  target,
Vector vc1 
)

    init projection with target & projectionDirection
    INPUT:
      typ     typ of projectionTarget; must be Typ_PLN
      target  typ=Typ_PLN: (Plane*)
              typ=Typ_SURMSH: (int*)target[0]=dbIndSurMesh;
                                    target[1]=dbIndSurPtab.
      vc1     projectionVector; if NULL: normal projection
    see UTRA_def_...

int UPRJ_app_pt ( Point p2,
Point p1 
)

int UPRJ_app_vc ( Vector v2,
Vector v1 
)

apply projection to a Vector.

int UPRJ_app_ci ( CurvElli e2,
Circ c1 
)

    apply projection to a Circle.
    see UT3D_el_projcipl

int UPRJ_app_el ( CurvElli eo,
CurvElli ei 
)

    apply projection to a Circle.
    see UT3D_el_projcipl

int UPRJ_app_plg ( CurvPoly cvo,
CurvPoly cvi,
Memspc objSpc 
)

int UPRJ_app_bsp ( CurvBSpl cvo,
CurvBSpl cvi,
Memspc objSpc 
)

apply projection to a Polygon

int UPRJ_app__ ( void *  objo,
int *  otyp,
int *  oSiz,
int  iNr,
void *  obji,
int  ityp,
Memspc objSpc 
)

    apply projection to struct; NOT object.
    init with UPRJ_def__
    Storage:
      Normale structs werden nach objo ausgegeben;
      ObjGX-Records: ObjGX-Records werden nach objo ausgegeben; die
        zugehoerigen Daten (structs) werden in objSpc gespeichert.
   
    Input:
      oSiz   size of objo; wird recursiv verkleinert !
      otyp   form of obji; muss also bei Surface auch Typ_ObjGX sein !
      iNr    Anzahl structs to transform
    Output:
      oSiz   freier Restplatz in objo
      objSpc fuer Daten (structs) von oGX-Objekten; kann f. structs NULL sein

int UPRJ_app_obj ( void *  objo,
int *  oSiz,
void *  obji,
Memspc objSpc 
)

    apply projection to struct or object.
    init mit UPRJ_def_.. erforderlich !!!
    Storage:
      Normale structs werden nach objo ausgegeben;
      ObjGX-Records: ObjGX-Records werden nach objo ausgegeben; die
        zugehoerigen Daten (structs) werden in objSpc gespeichert.
   
    Input:
      oSiz   size of objo; wird recursiv verkleinert !
      obji   (ObjGX*)  (NUR (ObjGX*) moeglich !)
    Output:
      oSiz   freier Restplatz in objo
      objSpc fuer Daten (structs) von oGX-Objekten

int UPRJ_app_oTab ( void *  objo,
int *  oSiz,
void *  obji,
Memspc objSpc 
)

    einen oGX-Block resolven
    Input:
      obji parentRecord (ObjGX-Record) dessen form ebenfalls oGX ist


Variable Documentation

int prj_typ [static]

void* prj_tg [static]

Vector prj_vc [static]


Generated on Sat May 30 09:31:56 2009 for gCAD3D by  doxygen 1.5.6