Pogosta vprašanja
(Tematizacija)
Pregled pogostih vprašanj
Kako izrisujem na ekran dve ali več vrednosti?
Kaj je narobe v opredelitvi Result = Transparent?
Kako dodam novo temo (napis, simbol, ...) da se bo izrisala na ekran?
Zakaj se pri geodetskih listih izpisuje informacija (Hint) samo v okolici izpisa nomenklature lista
Kako spreminjam velikost pisave glede na trenutno merilo ?
Kako spreminjam vrstni red izrisa na karto ?
Želim, da je napis na poliliniji obrnjen v smeri polilinije. Kako ?
Kako izpišem vrednosti iz dveh različnih polj, s poravnavo teksta levo in desno ?
Kako izrisujem slojnice različnih debelin?
Kako izrisujem na ekran dve ali več vrednosti?
Tako da 'seštevate' polja med sabo ali pišete vsako polje v svojo vrstico z ukazom Line v Temi Primer 1: [Ime Obcine] + " - " + [Sifra obcine] nam bo izpisovalo npr Ajdovščina - 1. Primer 2: [Ime Obcine] + Line + [Sifra obcine] nam bo izpisovalo prvo vrstico Ajdovščina, v drugo 1. Opomba: Rezultat 'seštevanja' izpisa je vedno besedilo, tako da mora biti[Sifra obcine].AsString , in ne [Sifra obcine].AsNumber
Kaj je narobe v opredelitvi Result = Transparent?
Nastavitev pogojnega izrisa npr.: NAROBE: Select Case [Vrednost Polja].AsNumber Case 1 Result = Transparent CaseElse Result = Opaque EndSelect PRAVILNO: Select Case [Vrednost Polja].AsNumber Case 1 Result = TMTransparent CaseElse Result = TMOpaque EndSelect Obrazložitev:TMTransparent in TMOpaque sta konstantne variable za opredelitev načina izrisa, tako kot je konstantna variable Red za rdečo barvo. Več o konstantnih spremenljivkah glej SDMS.HLP - Constants.
Kako dodam novo temo (napis, simbol, ...) da se bo izrisala na ekran?
V aplikaciji v Tematiki (desna stran), pritisnite desno tipko na miški in izberite Dodaj temo. Za detajle glej Tematika. Če pa želite v obstoječo tematiko dodati teme iz druge tematike, potem pritisnite desno tipko na miški in izberite Dodaj tematiko. Iz seznama izberite ustrezno tematiko in iz seznama tem v tematiki ustrezno (eno, več ali vse) temo.
Zakaj se pri geodetskih listih izpisuje informacija (Hint) samo v okolici izpisa nomenklature lista
Ker je to točkovna plast (za imena listov), ne poligonska. Mreža, ki jo vidite, je tipa GRID in je del programa. Popravljate jo lahko z VIEWEDIT ukazom
Kako spreminjam velikost pisave glede na trenutno merilo ?
Velikost pisave je možno spreminjati samo za TrueType pisave. Enota velikosti je v cm Za Skalarno spreminjanje velikosti pisave uporabljaj Funkcijo AtScale Primer : AtScale (1000,0.5) - pomeni da bo v merilu 1:1000 velikost pisave 0.5 cm
Kako spreminjam vrstni red izrisa na karto ?
Teme se izrisujejo po vrstnem redu, tako kot so v tematiki postavljene. Če temo 'primete in držite' z miško, jo lahko premikate po listi. Na ta način spreminjate vrstni red izrisa tem.
Želim, da je napis na poliliniji obrnjen v smeri polilinije. Kako ?
Za pravilno izvedbo spodnje funkcije, mora imeti polilinija vnešen centroid. Za ta centroid se izračuna projekcijska točka centroida na polilinijo in kot je smer stranice, na kateri leži projekcijska točka. Funkcija izvede tudi zasuk kota, tako da je napis vedno obrnjen navzgor.
V nek modul dodamo funkcijo //********************************************************************* Function GetAngleFromPline (R As TRecord) As Float Dim P As TPointArray, I As Long, O As Float Result = 0 If R.TopologyType = ttPolyline Then P = R.PointArray P.ProjectionPoint (R.y, R.x, I, O) If I < P.Count - 1 Then Result = RadToDeg (Angle (P.y (I + 1)- P.y (I), P.x(I+1)-P.x(I))) Else Result = RadToDeg (Angle (P.y(I)-P.y(I-1), P.x(I)-P.x(I-1))) EndIf P.Destroy // Zasuk kota, tako da je napis vedno obrnjen navzgor If Result >= 90 Then If Result <= 270 Then Result = Result + 180 EndIF EndIF EndIf EndFunction //*********************************************************************
V temi Napis, Lastnost Kot, dodamo pod Zahtevnejše nasledni zapis GetAngleFromPline (curRec)
Kako izpišem vrednosti iz dveh različnih polj, s poravnavo teksta levo in desno ?
Potrebujete dve temi iz iste podatkovne plasti. Prva izpisuje prvo polje, poravnava levo, druga izpisuje drugo polje, poravnava desno.
Kako izrisujem slojnice različnih debelin?
V temo Linija, Debelina linije vstavimo naslednjo kodo: If scale < 750 then If frac ([VISINA].AsNumber / 2.5) <> 0 Then Result = 0.015 else Result = 0.03 endif else If frac ([VISINA].AsNumber / 5) <> 0 Then Result = 0.015 else Result = 0.03 endif endif To nam določa debelino linije na dva načina in sicer ko je merilo manjše od 1:750 nam odebeli slojnice 0, 2.5, 5 in 7.5, sicer pa le 0 in 5. Glede na resolucijo na ekranu morate mogoče povečati vrednost 0.03.
|