Home
Krivulje
TTocka = class(Tobject) Constructor Create(aparent:tobject); Procedure Kopiraj(source:TTocka;all:boolean); Procedure Rebuild; Property Parent:tobject; read; Property X:double; read; Write; Property Z:double; read; Write; Property Depth:double; read; Write; Property S:integer; read; Write; Property PrevControlpoint:TVector3f; read; Write; Property NextControlpoint:TVector3f; read; Write; Property Segments:integer read FSegments Write SetSegments; Property AStyle:TALineStyle read FStyle Write SetStyle; Property TangentMode:TtangentMode read FTangentMode Write SeTtangentMode; Property OrgCoord:TVector3f read GetOrg write SetOrg; Property OrgCoord1:TVector3f read GetOrg1 write SetOrg1; Property ArcStyle:TarcStyle read FarcStyle write SeTarcStyle; Property ArcRadius:single read FArcRadius Write SetArcRadius; Property XF:string index 0 read FXF write SetFormulaString; Property YF:string index 1 read FYF write SetFormulaString; Property ZF:string index 2 read FZF write SetFormulaString; Property FiF:string index 3 read FFiF write SetFormulaString; Property ArcCentar:boolean read FarcCentar write setArcCentar; end; TSegmentList = class(tlist) Property Tocka[Index:integer]:TTocka read geTTocka; end; TrubneTocke = class //čuva točke Constructor Create(aparent:TDaska;Aowner:TtockeSystem); Procedure BildOutList; Procedure Kopiraj(source:TrubneTocke); Procedure MakeKocka(first:TVector3f); Procedure MakeTriangle(first:TVector3f); Procedure MakeCircle(first:TVector3f); Procedure ObrisiTocku(index:integer); Procedure Strech(sType:TstrechType;strength:tvector3f;Propor:boolean); Procedure Rotate(Plane:integer;Kut:single); Function AddNewTocka(Index:integer;Value:tvector3f):TTocka; Property Parentd:TDaska; Read; Property Mainlist:tlist; Read; Property MainTocke[Index:integer]:TTocka read GetMainTocka; Property Name: String read Fname Write SetName; Property Owner:TtockeSystem read Fowner write Fowner; Property Mode : TmodeRubneTocke read Fmode Write SetMode; Property Centar: TVector3f Read FCentar write FCentar; Property CentarMode:TcentarMode Read FCentarMode write SetcntarMode; Property Otvorena:boolean read Fotvorena write SetOtvorena; Property Count:integer Read GetMainCount; Property SegCount:integer Read GetSegcnt; Property TockaCount :integer Read GetTockaCnt; Property Segment[index:Integer]:TSegmentList read GetSegment; Property Tocka[Index:integer]:TTocka read GeTTocka; Property DoCNC:boolean read FdoCNC write FdoCNC; end; TtockeSystem = class Constructor Create(aparent:TDaska); Procedure Clear; Procedure Kopiraj(source:TtockeSystem); Procedure Resize(x,z:single); Procedure DodajKocku(first:TVector3f); Procedure DodajTriangle(first:TVector3f); Procedure DodajCircle(first:TVector3f); Procedure RemoveCurve(index:integer); Procedure AddLine(line:TrubneTocke); Procedure InitRubneTocke; Property Parent:TDaska read Parentd write Parentd; Property Count:integer read GetCount; Property Rubne:TrubneTocke read GetRubne; Property Rupa[Index:integer]:TrubneTocke read GetRupa; Property Mode : TmodeRubneTocke read Fmode Write SetMode; Property SideType:TSideType read FSideType write SeTSideType; Property Varijable :Tvarijable Read Fvarijable; Property EditModes:TEditModesSet read FEditModes write FEditModes; Property SpeenSeg:integer read FSpeenSeg write FSpeenSeg; Property BasePoint:TBasePoint read FBasePoint write FBasePoint; Property SpeenStart:integer read FspeenStart write FspeenStart; Property SpeenEnd:Integer read FspeenEnd write FspeenEnd; Property TxXtile:single read FTxXtile write FTxXtile; Property TxYtile:single read FTxYtile write FTxYtile; Property SphereMap:boolean read FSphereMap write FSphereMap; end; TSideType= (TSFront,TSBack,TSBoth,TSBothOut,TSOpen,TsSpeen,TSPath,TSFree); TmodeRubneTocke=(RTDisable,RTRadius,RTCurve,RTSurface); TcentarMode=(TCFix,TcAuto,TcFree); TstrechType= (TSCentar,TsNula,TsFirstPoint); TALineStyle=(RLine,Rcurve,Rarc); TarcStyle=(ARplus,Arminus); TtangentMode=(TAtangentFree,TaTangentNotEqual,TaTangentEqual,TaRadius); THomogeneousFltVector = array[0..3] of Single; Tvector4I = array[0..3] of Integer; TVector4f = THomogeneousFltVector; TVector = THomogeneousFltVector TAffineFltVector = array[0..2] of single; TVector3f = TAffineFltVector; TBasePoint = (TBPMinimum,TBPNula,TBPCentar);