Letzte Änderung:  
29.03.2010 13:10:12
 
ein Counter...
Anmelden
  Dokumentation - [Symbole und Klassifikation] - [Symbole] - [Flächensymbole]  
Bild Über IWAN
Bild Das Produkt
Bild ein wenig Technik
Bild Referenzen
Bild Open GIS
Bild History
Bild Aktuelle Änderungen

Bild Dokumentation
Bild Datenzugriff
Bild IwanScript
Bild Symbole und Klassifikation
PixelBild Maßstabsab. Darstellung
PixelBild Symbole
PixelBild Allgemeine Befehle
PixelBild Flächensymbole
PixelBild Liniensymbole
PixelBild Punktsymbole
PixelBild Textsymbole
PixelBild Klassifikationen
PixelBild Kartenqualität
PixelBild Beispielsymbole
Bild How-To's
Bild Beispielskripten

Bild Kontakt/Impressum
Bild Kontakt
Bild Impressum
Bild Haftungsausschluss
Bild Copyright
Bild Weitere Links

 

Flächensymbole

SetBrushPropEx
Überschreibt Farbangaben eines Pinsel. Bei Schraffuren kann hier die Transparenz deaktiviert werden.
Syntax:
SetBrushPropEx(SymbolNummer,Transparent,
"VordergrundFarbe","HintergrundFarbe","Rahmenfarbe");
Um schraffierten Flächen eine Hintergrundfarbe zuzuweisen (*nicht* durchsichtig) muss dem Argument Transparent "false" übergeben werden.
Soll die Rahmenfarbe nicht geändert werden, wird hier das Argument "null" erwartet (als Zeichenkette).

SetBrushStyle
Überschreibt Stile eines Pinsel.
Syntax:
SetBrushStyle(SymbolNummer,Stil,Hatch);
Setzt den Stil eines Pinsels, (BS_SOLID,BS_NULL,BS_HATCHED).
Wenn der Stil BS_HATCHED ist, können folgende Schraffurwerte angeben werden : HS_BDIAGONAL,HS_CROSS,HS_DIAGCROSS,HS_FDIAGONAL,HS_HORIZONTAL,HS_VERTICAL.
Alternativ ist der Wert "NONE" anzugeben.

BeginPattern / EndPattern
Durch die folgenden Funktionen kann ein Füllmuster (Pattern) generiert werden. Die Definition erfolgt in einem Block, beginnend mit BeginPattern und wird mit EndPattern beendet. Eine Schachtelung ist nicht möglich. Innerhalb eines Pattern können beliebig viele Zeichenoperationen angegeben werden. Ein Pattern wird intern als Bitmap erzeugt und in gewissen (festzulegenden) Bereichen skaliert. Eine transparente Darstellung ist z.Z. *nicht* möglich. Diese Bitmap wird dann als "Pinsel" verwendet und wiederholt in die Fläche gezeichnet.
Alle folgenden Befehle sind nur innerhalb einer Patterndefinition zu verwenden.
BeginPattern(SymbolNummer,Grundfarbe,Breite_in_mm,Höhe_in_mm,Bezugsmaßstab);
Diese Angabe weist dem angegeben Symbol dieses Pattern zu und beginnt den Definitionsblock.
Wird diese Symbol später zur Flächendarstellung verwendet, werden alle anderen Fülleigenschaften dieses Symbol ignoriert
Die Größenangabe erfolg in mm bei angegebenem Maßstab.
Ist der Maßstab "0", wird das Patter nicht skaliert.

SetPatternMode("COLOR"|"MONOCHROME|BITMAP",{BitmapForeColor});
Legt den Modus des Muster fest. Die Angabe "MONOCHROME" ist z.Z. nicht zu Verwenden.
Der Modus "BITMAP" ist erst ab Version 3.2.0 verfügbar. Für Monochrome Bitmaps muss ForeColor definiert werden.
SetPatternExtents(XMin,YMin,XMax,YMax);
Legt die Minimum und Maximum Ausdehnung der zu erzeugenden Bitmap in *Pixeln* fest.
Hinweis: gilt nicht für Modus "BITMAP"

Nachdem die Patterneigenschaften festgelegt wurden, können nun beliebig viele Zeichenoperationen angegeben werden. Alle Zeichenoperationen erhalten Positionsangabe in Prozent bzgl. der aktuellen Patterngröße. Dieses Vorgehen ermöglicht die Skalierung der Elemente. Es führt allerdings auch zu Rundungsproblemen die bei der Darstellung störend wirken können.
Der Koordinatenbereich hat 0,0 als linke obere Ecke und entsprechend 100,100 als rechter untere Ecke.
Line(SymbolNummer,x1,y1,x2,y2);
Zeichnet eine Linie mit der angegebene Symbolnummer. Z.B. ergibt Line(10,0,0,100,100) eine Diagonale Linie von links oben nach rechts unten. Beachten Sie, wie bei allen anderen Funktionen, das die Skalierungseigenschaften der angegebenen Symbol Verwendung finden.
Box(SymbolNummer,x1,y1,x2,y2);
Zeichnet eine gefüllte Fläche mit der angegebene Symbolnummer.
Circle(SymbolNummer,xCen,yCen,Radius);
Zeichnet einen Kreis an den angegeben Koordinaten. Z.B. Circle(10,50,50,10) zeichnet einen Kreis in die Mitte des Pattern mit einem Radius von 10% der Ausdehung.
Marker(SymbolNummer,x,y,size);
Zeichnet einen (TrueType) Marker an den angegeben Koordinaten.
Die "Size"-Angabe überschreibt dabei die im Marker definierte Größe.

SetBitmap(BitsPerPixel,Bitmap);
Ist der Patternmodus auf "BITMAP" gesetzt, muss genau ein Aufruf von SetBitmap erfolgen. Andere Elemente sind *nicht* zulässig.
Der "bitmap"-Parameter besteht aus einer Zeichenkette mit einem Schlüsselwort für den Typ der Bitmap, gefolgt von der Typabhängigen weitern Angabe.

Je nach Bitmaptyp werden verschieden Paramter des Pattern ignoriert oder interpretiert.
Wichtig: Bitmaps werden generell nicht skaliert, die Scale-Angabe in der Patterndefinition wird immer ignoriert.

Als Typ ist möglich:
  • file: lädt eine Windows-bmp Datei mit 1 oder 8 bit Farbtiefe
  • stipple: die Bits werden als Bitarray oder Bytearray direkt angegeben.
  • ressource: lädt "buildin" Muster

    bei Typ....
    "file:" werden alle Parameter die für dieses Pattern definiert wurde (Größe, Farben,etc.),ebenso die Farbtiefenangabe *ignoriert*.
    "stipple:" wird für die Größenbestimmung dieser Bitmap die im Pattern definierte Größe als Pixelausdehnung betrachtet.
    "ressource:" Größenangabe und die Farbtiefenangabe werden ignoriert.

    Für Alle monochromen Bitmap's gilt: als Hintergrundfarbe wird die in der Patterndefinition definierte Farbe verwendet.
    Hier ist das optional das Schlüsselwort "TRANSPARENT" zu verwenden. Die Vordergrundfarbe der Bitmap wird im zweiten Parameter für "SetBitMap" übergeben.
    ein Beispiel find Sie hier


  • Nachdem alle Angaben für dieses Pattern getroffen wurden, wird der Definitionsblock mit
    EndPattern();
    
    beendet.


    ein Beispiel:

    Go;
      /*
       Diese Angabe erzeugt das Pattern für
       Symbol N° 73, in dem linken Beispiel
       zu finden als die graue Fläche mit
       der Signatur.
      */
      BeginPattern(73,"#D6D3D6",50,50,1000);
    	SetPatternExtents(10,10,100,100);
    	SetPatternMode("Color");
    	Line(9,10,15,10,25);
    	Line(9,30,80,30,90);
    	Line(9,60,40,60,50);
    	Line(9,90,70,90,80);
    	Line(9,70,20,80,20);
    	Line(9,10,50,20,50);
    	Line(9,40,60,50,60);
    	Line(9,50,80,60,80);
      EndPattern();
    End;
    
     Beispiel für ein Pattern


    Beispiele für Bitmapmodus:
    Go;
      /*
       Diese Angabe erzeugt ein Pattern für
       Symbol N° 1 mit rotem Hintergrund und
       Grünen Linien.
       Die Definition erfolgt als Bit-Block.
       Die Bitmap besteht aus 8x8 Pixel mit einer
       Farbtiefe von einem Bit (monochrome).   
      */
      BeginPattern(1,"Red",8,8,0);
    	SetPatternMode("BITMAP","Green");
    	SetBitmap(1,"stipple:
                              10000000
                              01000000
                              00100000
                              00010000
                              00001000
                              00000100
                              00000010
                              00000001"
                                  );
      EndPattern();
    End;


    Go; /*
    ... als Byte-Block, Transparent
    diese Darstellung entspricht der
    in ArcView verwendeten.
    */
    BeginPattern(1,"TRANSPARENT",8,8,0);
    SetPatternMode("BITMAP","Green");
    SetBitmap(1,"stipple:80402010 08040201"); EndPattern();
    End;

    Go;
    /*
    ... als Dateiquelle */
    BeginPattern(1,"Ignoriert",1,1,0);
    SetPatternMode("BITMAP","Green");
    SetBitmap(1,"file:c:c\stipple1.bmp");
    EndPattern();
    End;
    Druckersymbol Druckversion dieser Seite 

    Zuletzt geändert am 24.05.07 (th)
    Seitenalias: "SetBrushPropEx, SetBrushStyle, BeginPattern, EndPattern, SetPatternMode"
       Sitemap | IDU Homepage: [http://www.idu.de] cardo Homepage: [http://www.cardogis.com] GDDB Homepage: [http://www.gddb.de]