NamingConventions

       gCAD3D naming conventions                   ../dox/NamingConventions.txt

------------------------------------------------------------------------------
FunktionsNamesgebung:
 Offen:  Polygon und Polynom unterscheiden !? (see pta, plm, plmc3 polCoeff ?)

 Zuordnung der Funktion entspricht dem Outputtyp, nicht den Inputs !
 <FNC-Group>_<output>_<Functyp>_<input>_<ZusatzInfos>

FNC-Groups: UT2D UT3D UTI UTP UME UTX MEM ..
output:     pt ln ...
            entfaellt bei Testfunktionen - sofort Functyp ck od comp
Functyp     int proj ..
input       pt 2pt  ..



<output> / <input> ------------------------------------
  Elementtypen:
 str   (string, terminiert mit \0)
 strLF (string, terminiert mit LF !)
 ind   index (int, long)
 db    = doublezahl            ndb     = table of doubles
 i     int4;                   ni      = table of int4
 m2    3x2-Matrix;  m3 4x3-Matrix;  m4 4x4-Matrix;
 side     side (before behind above below)
 sidPerp  side  before or behind perpendic. Line/Plane
 par    uPar od vPar
 parvc  parameter of point on vector
 parln  parameter of point on line
 parci  parameter of point on circ
 parbsp (parameter of point on B-SplineCurve)
 parsbsp (parameter of point on B-SplineSurface)
 len   (length)       slen (signed length)
 sr    (sense of rotation) ar (Area)
 angr  (AngleRadians) angd (AngleDegree)
 adeg  Winkel in Degree
 arad  Winkel in Radianten
 rd    (Radius)
 bp    (BackPlane; XY, XZ, ZY)
 hbp   Hoehenwert einer BackPlane
 gcp   gravity-center-point (Schwerpunkt)

 pt    Point, Typ_PT
 npt   table of points = PointArray = Polygon; was pta
 inpt  indexed polygon (index table to table of points)
 vc    Vector, Typ_VC
 vc1   Vector with length=1 (normalized)
 ln    Line, Typ_LN
 plg   CurvPoly, Typ_CVPOL, Polygon mit Laengenparametertabelle)
 polc  (closed Polygon)
 cv    Curve; for polygon use npt;
 ncv   Array of curves;  was cva
 ci    Circ; Typ_AC, ac,  trimmed-circle
 ell   CurvElli, Typ_CVELL, Ellipse
 pl    Plane, Typ_PLN; Ebene.
 sph   Sphere, Typ_SPH, Kugel.
 bez   CurvBez, Typ_CVBEZ, Bezier-curve.
 clot  CurvClot, Typ_CVCLOT, clothoid-curve.
 cbsp  CurvBSpl, Typ_CVBSP, B-Spline-Curve; was bspl
 ccon  Conic-Curve; hyperbola|parabola.
 pspl  Typ_CVPSP3, Polynom.Spline.
 bnd   boundary; curve, closed.
 crv   linear object; LN,CI,EL,CV
 sur   Surface (all types)
 sru   RuledSurface, Typ_SURRU.
 srv   RevolvedSurface, Typ_SURRV.
 sbsp  SurBSpl, Typ_SURBSP, B-SplineSurface.
 spu   Surf-planar-unperforated;  spp Surf-planar-perforated.
 sus   SurStd, StandardSurface.
 Tes   tesselated surface (openGlSurface)
 box   Box Tri (box besser -> bbox (boundingBox))
 tria  Triangle
 rbox  rectangleBox; Viereck)
 edg   Edge (Kante)
 fac   Fac3, Typ_Fac3: Face; 3 int's (pointIndices)
 -"-   FacNf  Face with its NeigbourFaces
 msh   Typ_SURMSH, Mesh
 mdr   ReferenceModel Ditto
 mdb   BasicModel

 ox   Complex-Object                     ObjGX
 ccv  Concatenated-Curve (ObjGX)
 crv  linear object; LN,CI,EL,CV ..      typ+struct
 sur  planimetric obj; plane, surf       typ+struct
 obj,ost  object-structure; any object   typ+struct
 dbo  DB-object; any obj                 typ+dbInd
 oid  ObjectID                           string       (of DB-object eg "P20")
 ato  atomic-object; any obj             austyp/austab (int/double)
 src  Source-object (text)


Line = linesegment (2 points, both sides limited (lnLL)
Ray  = 1 point and 1 vector; limited on one side (lnLU).
       both sides unlimited  (lnUU) ?


<Functyp> ------------------------------------
  get    set
  add
  sub (subtract)
  mult
  ev    evaluate (parameter)
  perp  perpendicular = senkrecht/lotrecht/normal   nor
  int   intersect
  ipl   interpolate
  lim   limits (endpoints)
  dec   decode
  find  find
  prj     = Projektion proj
  inv     = invertieren (umdrehen)
  mir     = mirror gespiegelt
  rot     = drehen, verdreht
  tr tra  = Translation
  trk     = Translation kartesisch (x, y);
  trv     = Translation Vektoriell (Vektor, Laenge);
  trp     = Translation polar (Winkel, Laenge);
  tri     = Triangle, Dreiecksberechnung
  tang    = Tangente, tangential tng

  in near mid cnvt (convert)


  Funktionen:
        Keine Funktionsangabe bei Umwandlungen
        get, set, init ..
        ins, del       (insert)
  swap
        ck      = allg. Testfunktionen
        fix     = allgem. Korrekturen
        len     = Laengenberechnung,   lenq = SquareLen (len*len)
                  slen=signed len, nlen =lenght of a normal ..
        perp    = Orthogonal (Normal)
        par     = parallel
        on      = auf
        in      = zwischen between
        equ     = identisch
        norm    = normieren
        div     = teilen (divide)
        orient    ausrichten



  Testfunktionen:
    XXX_test_xxx
    werden ex Src ausgeblendet mit
    #ifdef globTag
       int XXX_test_xxx ()  {}
    #endif


---------------------------------------------------------------------------
Returncodes:
 0 (meistens !) OK
>0 OK mit Zusatzinfo
<0 Error mit Zusatzinfo




---------------------------------------------------------------------------
VariablenNamesgebung:
1.char: typ i=int d=double t=text
            p=PT v=VC c=CI l=LN s=Curv o=ObjGX m=Memspc 
2.char: Datentypinfo; kann beim DefaultTyp fehlen.
        DefaultTyp fuer int=i4, double=d8, char=t1
        p=pointer d=data <ziffer>=size f=function
3.-  Beschreibung; der erste Character ist Uppercase !
Beispiel:
 int    i1, *ip1,  iNr;   short  i2Typ (Int-2Byte)
 double d1, *dp1,  dSum;
 char   t1, *tp1,  tdBuf1[256]



---------------------------------------------------------------------------
Generated on Fri Apr 6 09:40:11 2012 for gCAD3D by  doxygen 1.6.3