TDrawList: Razlika med redakcijama

Iz SDMS
Jump to navigationJump to search
m
m
Vrstica 13: Vrstica 13:
  
 
===Items===
 
===Items===
Lastnost '''Items''' Vrne določeno temo.
+
Lastnost '''Items''' vrne določeno temo.
 
<declaration>
 
<declaration>
 
RO Property|TDrawList.Items
 
RO Property|TDrawList.Items
Vrstica 21: Vrstica 21:
 
<source>Dim I As Long, DI As TDrawItem
 
<source>Dim I As Long, DI As TDrawItem
 
For I = 0 To DrawList.Count - 1
 
For I = 0 To DrawList.Count - 1
   DI = DrawList.Items (I)
+
   DrawList.Items (I).Visible = false // Izključu vse teme iz izrisa
  ...
 
 
Next</source>
 
Next</source>
 
===IsInList===
 
Lastnost '''IsInList''' ugotavlja, če je bila v tematiko dodana neka druga tematika.
 
<declaration>
 
RO Property|TDrawList.IsInList
 
List|TDrawList|Referenca na tematiko, ki je bila dodana.
 
Result|Boolean|True, če je bila tematika dodana, sicer False.
 
</declaration>
 
<source>If Not Drawlist.IsInList ([Neka Tematika]) Then
 
  Drawlist.AddList ([Neka Tematika])
 
EndIf</source>
 
 
===IndexOfList===
 
Lastnost '''IndexOfList''' vrne index prve teme, ki je bila v tematiko dodana iz druge tematike.
 
<declaration>
 
RO Property|TDrawList.IndexOfList
 
List|TDrawList|Referenca na tematiko, ki je bila dodana.
 
Result|Long|Zaporedna številka prve teme, ki je bila dodana iz druge tematike. Prva tema ima številko 0. Če tematike ne najde, vrne -1.
 
</declaration>
 
<source></source>
 
  
 
==Metode za urejanje tematike==
 
==Metode za urejanje tematike==
  
 
===Add===
 
===Add===
Metoda '''Add''' .
+
Metoda '''Add''' doda novo temo na konec tematike.
 
<declaration>
 
<declaration>
 
Method|TDrawList.Add
 
Method|TDrawList.Add
Result|Optional TDrawItem|.
+
Result|Optional TDrawItem|Vrne referenco na novo temo.
 
</declaration>
 
</declaration>
<source></source>
+
<source>Dim DI As TDrawItem
 +
DI = DrawList.Add        // Doda novo temo na konec tematike
 +
DI.Type = dtText        // Nastavi tip teme
 +
DI.Layer = [Neka plast]  // Določi plast teme
 +
DI.Value(2) = DI.Layer.DataSets(0).Fields(0).FullName + '.AsString' // Določi polje izpisa</source>
  
 
===Insert===
 
===Insert===
Metoda '''Insert''' .
+
Metoda '''Insert''' vrine novo temo na določeno mesto v tematiki.
 
<declaration>
 
<declaration>
 
Method|TDrawList.Insert
 
Method|TDrawList.Insert
Index|Long|Zaporedna številka teme, pred katero bo nova tema vrinjena. Prva tema ima številko 0..
+
Index|Long|Zaporedna številka teme, pred katero bo nova tema vrinjena. Prva tema ima številko 0.
Result|Optional TDrawItem|.
+
Result|Optional TDrawItem|Vrne referenco na novo temo.
 
</declaration>
 
</declaration>
<source></source>
+
<source>Dim DI As TDrawItem
 +
DI = DrawList.Insert (2) // Doda novo temo na tretje mesto v tematiko         
 +
DI.Type = dtPolyLine    // Nastavi tip teme
 +
DI.Layer = [Neka plast]  // Določi plast teme</source>
  
 
===Remove===
 
===Remove===
Metoda '''Remove''' .
+
Metoda '''Remove''' izbriše določeno temo iz tematike.
 
<declaration>
 
<declaration>
 
Method|TDrawList.Remove
 
Method|TDrawList.Remove
Index|Long|Zaporedna številka teme, ki jo želimo odstraniti. Prva tema ima številko 0..
+
Index|Long|Zaporedna številka teme, ki jo želimo odstraniti. Prva tema ima številko 0.
 +
</declaration>
 +
<source>DrawList.Remove (2)                // Izbriše tretjo temo iz tematike
 +
DrawList.Remove (DrawList.Count-1) // Izbriše zadnjo temo iz tematike</source>
 +
 
 +
===BeginUpdate===
 +
Metoda '''BeginUpdate''' prepreči osveževanje tematike med izvajanjem basica. Na koncu je treba obvezno poklicati metodo {{PL|TDrawList|EndUpdate}}, ki bo osvežila tematiko. Glavni namen tega je, da se prepreči utripanje tematike ob večih spremembah in pa hitrost izvajanja.
 +
<declaration>
 +
Method|TDrawList.BeginUpdate
 +
</declaration>
 +
<source>DrawList.BeginUpdate
 +
DrawList.Add
 +
...
 +
DrawList.EndUpdate</source>
 +
 
 +
===EndUpdate===
 +
Metoda '''EndUpdate''' omogoči osveževanje tematike med izvajanjem basica. Na začetku je treba poklicati metodo {{PL|TDrawList|BeginUpdate}}.
 +
<declaration>
 +
Method|TDrawList.EndUpdate
 +
</declaration>
 +
 
 +
==Lastnosti za manipulacijo tematik v tematiki==
 +
 
 +
===IsInList===
 +
Lastnost '''IsInList''' ugotavlja, če je bila v tematiko dodana neka druga tematika z ukazom {{PL|TDrawList|AddList}} ali {{PL|TDrawList|InsertList}}.
 +
<declaration>
 +
RO Property|TDrawList.IsInList
 +
List|TDrawList|Referenca na tematiko, ki je bila dodana.
 +
Result|Boolean|True, če je bila tematika dodana, sicer False.
 +
</declaration>
 +
<source>If Not Drawlist.IsInList ([Neka Tematika]) Then // preveri če je lista v tematiki
 +
  Drawlist.AddList ([Neka Tematika])            // če je ni, jo doda         
 +
EndIf</source>
 +
 
 +
===IndexOfList===
 +
Lastnost '''IndexOfList''' vrne index prve teme, ki je bila v tematiko dodana iz druge tematike z ukazom {{PL|TDrawList|AddList}} ali {{PL|TDrawList|InsertList}}.
 +
<declaration>
 +
RO Property|TDrawList.IndexOfList
 +
List|TDrawList|Referenca na tematiko, ki je bila dodana.
 +
Result|Long|Zaporedna številka prve teme, ki je bila dodana iz druge tematike. Prva tema ima številko 0. Če tematike ne najde, vrne -1.
 
</declaration>
 
</declaration>
<source></source>
+
<source>Dim I As Long
 +
I = Drawlist.IsInList ([Neka Tematika 1]) // ugotovi lokacijo prve teme tematike 1
 +
If I = -1 Then                            // če ni tematike 1
 +
  I = Drawlist.Count                      // bo dodal na konec
 +
EndIf
 +
Drawlist.InsertList (I, [Neka Tematika 2]) // vrine tematiko 2</source>
 +
 
 +
==Metode za manipulacijo tematik v tematiki==
  
 
===AddList===
 
===AddList===
Vrstica 76: Vrstica 108:
 
<declaration>
 
<declaration>
 
Method|TDrawList.AddList
 
Method|TDrawList.AddList
List|TDrawList|.
+
List|TDrawList|Tematika, ki jo dodajamo.
 
</declaration>
 
</declaration>
 
<source>DrawList.AddList ([Neka Tematika])</source>
 
<source>DrawList.AddList ([Neka Tematika])</source>
Vrstica 85: Vrstica 117:
 
Method|TDrawList.InsertList
 
Method|TDrawList.InsertList
 
Index|Long|Zaporedna številka teme, pred katero vrine tematiko. Prva tema ima številko 0.
 
Index|Long|Zaporedna številka teme, pred katero vrine tematiko. Prva tema ima številko 0.
List|TDrawList|.
+
List|TDrawList|Tematika, ki jo dodajamo.
 
</declaration>
 
</declaration>
<source></source>
+
<source>Drawlist.InsertList (0, [Neka Tematika])</source>
  
 
===RemoveList===
 
===RemoveList===
Metoda '''RemoveList''' odstrani vse teme, ki so bile dodane iz določene tematike.
+
Metoda '''RemoveList''' odstrani vse teme, ki so bile dodane iz določene tematike z ukazom {{PL|TDrawList|AddList}} ali {{PL|TDrawList|InsertList}}.
 
<declaration>
 
<declaration>
 
Method|TDrawList.RemoveList
 
Method|TDrawList.RemoveList
Vrstica 96: Vrstica 128:
 
</declaration>
 
</declaration>
 
<source>DrawList.RemoveList ([Neka Tematika])</source>
 
<source>DrawList.RemoveList ([Neka Tematika])</source>
 
===BeginUpdate===
 
Metoda '''BeginUpdate''' .
 
<declaration>
 
Method|TDrawList.BeginUpdate
 
</declaration>
 
<source></source>
 
 
===EndUpdate===
 
Metoda '''EndUpdate''' .
 
<declaration>
 
Method|TDrawList.EndUpdate
 
</declaration>
 
<source></source>
 
  
 
===Recreate===
 
===Recreate===

Redakcija: 19:29, 4. november 2014

Ta stran je trenutno še v izdelavi.

Razred TDrawList vsebuje informacije o tematikah.

Lastnosti za urejanje tematike

Count

Lastnost Count vrne število tem v tematiki.

RO Property TDrawList.Count As Long
ResultLongŠtevilo tem.
Message ("Lastnosti tematike", "V tematiki je " + IntToStr (Drawlist.Count) + " tem.")

Items

Lastnost Items vrne določeno temo.

RO Property TDrawList.Items (Index As Long) As TDrawItem
IndexLongZaporedna številka teme. Prva tema ima številko 0.
ResultTDrawItemReferenca na temo.
Dim I As Long, DI As TDrawItem
For I = 0 To DrawList.Count - 1
  DrawList.Items (I).Visible = false // Izključu vse teme iz izrisa
Next

Metode za urejanje tematike

Add

Metoda Add doda novo temo na konec tematike.

Method TDrawList.Add As TDrawItem
ResultOptional TDrawItemVrne referenco na novo temo.
Dim DI As TDrawItem
DI = DrawList.Add        // Doda novo temo na konec tematike
DI.Type = dtText         // Nastavi tip teme
DI.Layer = [Neka plast]  // Določi plast teme
DI.Value(2) = DI.Layer.DataSets(0).Fields(0).FullName + '.AsString' // Določi polje izpisa

Insert

Metoda Insert vrine novo temo na določeno mesto v tematiki.

Method TDrawList.Insert (Index As Long) As TDrawItem
IndexLongZaporedna številka teme, pred katero bo nova tema vrinjena. Prva tema ima številko 0.
ResultOptional TDrawItemVrne referenco na novo temo.
Dim DI As TDrawItem
DI = DrawList.Insert (2) // Doda novo temo na tretje mesto v tematiko          
DI.Type = dtPolyLine     // Nastavi tip teme
DI.Layer = [Neka plast]  // Določi plast teme

Remove

Metoda Remove izbriše določeno temo iz tematike.

Method TDrawList.Remove (Index As Long)
IndexLongZaporedna številka teme, ki jo želimo odstraniti. Prva tema ima številko 0.
DrawList.Remove (2)                // Izbriše tretjo temo iz tematike
DrawList.Remove (DrawList.Count-1) // Izbriše zadnjo temo iz tematike

BeginUpdate

Metoda BeginUpdate prepreči osveževanje tematike med izvajanjem basica. Na koncu je treba obvezno poklicati metodo TDrawList, ki bo osvežila tematiko. Glavni namen tega je, da se prepreči utripanje tematike ob večih spremembah in pa hitrost izvajanja.

Method TDrawList.BeginUpdate
DrawList.BeginUpdate
DrawList.Add
...
DrawList.EndUpdate

EndUpdate

Metoda EndUpdate omogoči osveževanje tematike med izvajanjem basica. Na začetku je treba poklicati metodo TDrawList.

Method TDrawList.EndUpdate

Lastnosti za manipulacijo tematik v tematiki

IsInList

Lastnost IsInList ugotavlja, če je bila v tematiko dodana neka druga tematika z ukazom TDrawList ali TDrawList.

RO Property TDrawList.IsInList (List As TDrawList) As Boolean
ListTDrawListReferenca na tematiko, ki je bila dodana.
ResultBooleanTrue, če je bila tematika dodana, sicer False.
If Not Drawlist.IsInList ([Neka Tematika]) Then // preveri če je lista v tematiki
  Drawlist.AddList ([Neka Tematika])            // če je ni, jo doda          
EndIf

IndexOfList

Lastnost IndexOfList vrne index prve teme, ki je bila v tematiko dodana iz druge tematike z ukazom TDrawList ali TDrawList.

RO Property TDrawList.IndexOfList (List As TDrawList) As Long
ListTDrawListReferenca na tematiko, ki je bila dodana.
ResultLongZaporedna številka prve teme, ki je bila dodana iz druge tematike. Prva tema ima številko 0. Če tematike ne najde, vrne -1.
Dim I As Long
I = Drawlist.IsInList ([Neka Tematika 1]) // ugotovi lokacijo prve teme tematike 1
If I = -1 Then                            // če ni tematike 1
  I = Drawlist.Count                      // bo dodal na konec
EndIf
Drawlist.InsertList (I, [Neka Tematika 2]) // vrine tematiko 2

Metode za manipulacijo tematik v tematiki

AddList

Metoda AddList doda v tematiko vse teme iz druge tematike.

Method TDrawList.AddList (List As TDrawList)
ListTDrawListTematika, ki jo dodajamo.
DrawList.AddList ([Neka Tematika])

InsertList

Metoda InsertList vrine v tematiko vse teme iz druge tematike.

Method TDrawList.InsertList (Index As Long, List As TDrawList)
IndexLongZaporedna številka teme, pred katero vrine tematiko. Prva tema ima številko 0.
ListTDrawListTematika, ki jo dodajamo.
Drawlist.InsertList (0, [Neka Tematika])

RemoveList

Metoda RemoveList odstrani vse teme, ki so bile dodane iz določene tematike z ukazom TDrawList ali TDrawList.

Method TDrawList.RemoveList (List As TDrawList)
ListTDrawList.
DrawList.RemoveList ([Neka Tematika])

Recreate

Metoda Recreate .

Method TDrawList.Recreate

LayerOnOff

Metoda LayerOnOff .

Method TDrawList.LayerOnOff (L As TLayer, Operation As Long)
LTLayer.
OperationLong.

Operation

Metoda Operation .

Method TDrawList.Operation (L As TLayer, Operation As Long)
LTLayer.
OperationLong.

OperationAlias

Metoda OperationAlias .

Method TDrawList.OperationAlias (Alias As String, Operation As Long)
AliasString.
OperationLong.

Metode tematike

SaveImage

Metoda SaveImage .

Method TDrawList.SaveImage (FileName As String, X1, Y1, X2, Y2, PixelPrecision As Float)
FileNameString.
X1Float.
Y1Float.
X2Float.
Y2Float.
PixelPrecisionFloat.

DXFOut

Metoda DXFOut .

Method TDrawList.DXFOut (FileName, Template As String, X1, Y1, X2, Y2, Scale As Float)
FileNameString.
TemplateString.
X1Float.
Y1Float.
X2Float.
Y2Float.
ScaleFloat.

Po uvozu v Autocadu je priporočljivo zagnati ukaz REGEN, ker se šele potem pravilno upoštevajo tipi linij.

Kot ime plasti a Autocadu se uporabi dodatno ime teme, če je določeno. Če ni določeno, se uporabi ime teme, če pa tudi to ni določeno, se pa uporabi ime podatkovne plasti.

V DXF se izvažajo naslednji tipi tem, ostale pa se ignorirajo:

  • Simbol
    • Ni polnjenja pri simbolih.
  • Besedilo
    • Ni ozadja, okvira in sence.
    • Ni omejitve na dolžino teksta.
  • Linija
    • Ni krogov in lokov
    • Ni simbolov na tipih linij.

ZoomToTiles

Metoda ZoomToTiles .

Method TDrawList.ZoomToTiles


Skupne lastnosti

Lastnosti tematike se običajno nastavljajo v Urejevalnik tematike, možen pa je tudi dostop do vseh podatkov preko basica. Pri spreminjanju katerikolih podatkov objekta, morate za dokončno spremembo izvesti še TDrawList ukaz.

Dim Dl as TDrawList
Dl = [Neka tematika]
Message ("Lastnosti tematike", 
  "Ime: " + Dl.Name + Line +
  "Dodatna imena: " + Dl.Alias + Line +
  "Komentar: " + Dl.Comment + Line +
  "ID: $" + IntToHex (Dl.ID) + Line +
  "Mapa: " + Dl.Parent.Name + Line +
  "Naredil: " + Dl.Creator.Name + " Ob: " + DateTimeToStr (Dl.Created) + Line +
  "Popravil: " + Dl.Modifier.Name + " Ob: " + DateTimeToStr (Dl.Modified) + Line +
  "Pravica vpogleda: " + Dl.ViewAccess.Name + Line +
  "Pravica urejanja: " + Dl.EditAccess.Name 
)

Name

Lastnost Name določa osnovno ime objekta (opisno ime). Ker se ime lahko občasno spreminja, se sklicevanje na objekt z uporabo imena odsvetuje. Uporabljate rajši dodatno ime ali ID objekta.

Property TDrawList.Name As String
ResultStringIme objekta.

Alias

Lastnost Alias določa dodatno ime objekta ali celo več dodatnih imen. Ta lastnost se načeloma uporablja za sklice na objekt namesto osnovnega imena objekta.

Property TDrawList.Alias As String
ResultStringDodatna imena. Če jih je več, morajo biti ločena s podpičjem.

Comment

Lastnost Comment določa komentar k objektu.

Property TDrawList.Comment As String
ResultStringPoljuben komentar.

ID

Lastnost ID določa unikatni identifikator objekta, ki se samodejno kreira pri kreiranju objekta in se nikdar ne spremeni.

RO Property TDrawList.ID As Long
ResultLongIdentifikator objekta.

Parent

Lastnost Parent določa ime mape, v kateri se imenovani objekt nahaja.

Property TDrawList.Parent As TFolder
ResultTFolderMapa objekta.

Creator

Lastnost Creator določa uporabnika, ki je objekt ustvaril.

RO Property TDrawList.Creator As TUser
ResultTUserUporabnik.

Created

Lastnost Created določa datum in čas nastanka objekta.

RO Property TDrawList.Created As DateTime
ResultDateTimeČas nastanka objekta.

Modifier

Lastnost Modifier določa uporabnika, ki je objekt nazadnje spremenil.

RO Property TDrawList.Modifier As TUser
ResultTUserUporabnik.

Modified

Lastnost Modified določa datum in čas, ko je bil objekt nazadnje spremenjen.

RO Property TDrawList.Modified As DateTime
ResultDateTimeČas zadnje spremembe objekta.

ViewAccess

Lastnost ViewAccess določa, katera skupina uporabnikov ima pravico uporabe objekta.

Property TDrawList.ViewAccess As TUserGroup
ResultTUserGroupSkupina uporabnikov.

EditAccess

Lastnost EditAccess določa, katera skupina uporabnikov ima pravico spreminjanja objekta.

Property TDrawList.EditAccess As TUserGroup
ResultTUserGroupSkupina uporabnikov.

UsedIn

Lastnost UsedIn določa, v katerih aplikacijah je določen objekt uporabljan. Če nastavimo vrednost UsedIn na "*", potem je objekt dosegljiv v vseh aplikacijah. Ta podatek se uporablja izključno za izvoz aplikacije v SIF.

Property TDrawList.UsedIn As String
ResultStringAplikacije, ki uporabljajo ta objekt. Če je navedenih več aplikacij, se le-te ločijo s podpičjem.

IsFolder

Lastnost IsFolder določa, ali je dani objekt mapa ali kak drug objekt.

RO Property TDrawList.IsFolder As Boolean
ResultBooleanV danem primeru je vrednost vedno False.

IsObject

Lastnost IsObject določa, ali je dani objekt mapa ali kak drug objekt.

RO Property TDrawList.IsObject As Boolean
ResultBooleanV danem primeru je vrednost vedno True.

ObjectType

Lastnost ObjectType določa vrsto objekta.

RO Property TDrawList.ObjectType As Long
ResultLongV danem primeru je vrednost XXX.

Skupne metode

Edit

Metoda Edit odpre urejevalnik objekta.

Method TDrawList.Edit

Store

Metoda Store dejansko shrani spremembe objekta (izvedene z SDMS Basic ukazi).

Method TDrawList.Store

Duplicate

Metoda Duplicate podvoji objekt. Ime podvojenega objekta je sestavljeno iz "Kopija " in imena originala, dodatno ime (Alias) pa je zbrisano. Objekt se kreira v isti mapi, kot je original.

Method TDrawList.Duplicate (DuplicateData As Boolean) As TDrawList
DuplicateDataBooleanSe uporablja samo za Podatkovne plasti in Tabele. Če je nastavljeno na True, se poleg same strukture objekta podvojijo tudi podatki.
ResultOptional TDrawListReferenca na kreiran objekt.

SaveToNewObject

Metoda SaveToNewObject XXX.

Method TDrawList.SaveToNewObject (Caption As String, Root As TFolder) As TDrawList
CaptionString.
RootTFolder.
ResultOptional TDrawList.

Clear

Metoda Clear briše vse lastnosti objekta razen imena XXX.

Method TDrawList.Clear

Delete

Metoda Delete briše objekt iz sistema.

Method TDrawList.Delete As Boolean
ResultOptional BooleanXXX.

FullName

Lastnost FullName vrne polno ime objekta, ki je sestavljeno iz imeni vseh map nad objektom in imena objekta.

RO Property TDrawList.FullName As String
ResultStringXXX.

SaveToFile

Metoda SaveToFile shrani objekt v binarni obliki v dano datoteko.

Method TDrawList.SaveToFile (FileName As String)
FileNameStringPolno ime datoteke, v katero naj se objekt shrani.

LoadFromFile

Metoda LoadFromFile naloži objekt iz datoteke v binarni obliki. Ta datoteka je predhodno nastala z ukazom SaveToFile.

Method TDrawList.LoadFromFile (FileName As String) As Boolean
FileNameStringPolno ime datoteke, iz katere naj se objekt naloži.
ResultOptional Boolean.

SaveToSif

Metoda SaveToSif shrani objekt v SIF obliki v datoteko.

Method TDrawList.SaveToSif (FileName As String)
FileNameStringPolno ime datoteke, v katero naj se objekt shrani.

SaveToSifAppend

Metoda SaveToSifAppend doda objekt v obstoječo SIF datoteko.

Method TDrawList.SaveToSifAppend (FileName As String)
FileNameStringPolno ime datoteke, v katero naj se objekt doda.

SaveToXml

Metoda SaveToXml shrani objekt v XML obliki v datoteko.

Method TDrawList.SaveToXml (FileName As String)
FileNameStringPolno ime datoteke, v katero naj se objekt shrani.