LitDev 1.2.16.0 DE Extension API

LD3DView LDArray LDBits LDBlueTooth LDCall
LDChart LDClient LDClipboard LDColours LDCommPort
LDController LDControls LDCursors LDDataBase LDDateTime
LDDebug LDDialogs LDDictionary LDEffect LDEmail
LDEncryption LDEvents LDFastArray LDFastShapes LDFigures
LDFile LDFocus LDftp LDGraph LDGraphicsWindow
LDHID LDImage LDInline LDIOWarrior LDList
LDLogic LDMath LDMathX LDMatrix LDMusic
LDNetwork LDPhysics LDProcess LDQueue LDRegex
LDResources LDScrollBars LDSearch LDServer LDSettings
LDShapes LDShell LDSort LDSound LDSpeech
LDStatistics LDStopwatch LDText LDTextWindow LDTimer
LDTranslate LDUnits LDUtilities LDVector LDWaveForm
LDWebCam LDWindows LDxml LDZip

LDShapes
Erweiterte Funktionen und Methoden für Shapes (Interne Namensverarbeitung erstellter Objekte).
Diverse Pinsel (Brush#) können mit BrushGradient, BrushImage und BrushText erstellt werden.

example animated\*.sb
other-samples\BrushGradients.sb, ShapeEvents.sb

'Alle Eigenschaften zu 'shp':
props = LDShapes.GetProperties(shp)
idcs = Array.GetAllIndices(props)
For n = 1 To Array.GetItemCount(idcs)
TextWindow.WriteLine(idcs[n] +"="+ props[idcs[n]])
EndFor

'Einzeleigenschaft zB. "Name":
name = LDShapes.GetProperty(shp, "Name")

'Eigenschaft setzen zB. "Width":
LDShapes.SetProperty(shp, "Width",100)


AddAnimatedGif AddAnimatedImage AddPolygon
AddRegularPolygon AddStar AnimateOpacity
AnimateRotation AnimateZoom AnimationCount
AnimationInterval AnimationPause AnimationResume
AnimationSet BrushColour BrushEllipse
BrushGradient BrushImage BrushPolygon
BrushRectangle BrushRoundedRectangle BrushShape
BrushText Centre FastMove
Font GetAllShapes GetAllShapesAt
GetColour GetLeft GetOpacity
GetProperties GetProperty GetTop
Height LastEventShape LastEventType
Move MoveLine MovePolygon
MoveTriangle Overlap OverlapBox
OverlapCircle OverlapDetail PenColour
PenStyle PenWidth RasteriseTurtleLines
RemoveTurtleLines ResetTurtle ReSize
RotateAbout SetImage SetProperty
SetShapeEvent SetSize SetTurtleImage
ShapeEvent Skew Width
ZIndex ZoomAll

AddAnimatedGif(imageName,repeat)
Fügt eine Shape mit animiertem Gif (AnimatedGif) im GraphicsWindow hinzu (asynchron, Intern: Image#).
Nicht zu viele davon einsetzen, da sonst die Computerleistung sehr schnell abnimmt.
Statische Gif (AnimationCount = 0) wird zwar geladen, aber nicht angezeigt.

imageName Die zu ladende animierte gif Datei als lokaler Dateipfad oder Url (KEIN ImageList Bild).
repeat Animation endlos wiederholen? "True" oder "False".
returns Der Name der animierten gif Bildshape.

AddAnimatedImage(imageName,repeat,countX,countY)
Fügt eine Shape mit Bilderanimation (AnimatedImage, aus mehreren Einzelbildern) zum GraphicsWindow hinzu (asynchron, Intern: Image#). Für Hintergrundtransparenz Png bevorzugen.
Nicht zu viele davon einsetzen, da sonst Computerleistung sehr schnell abnimmt.

imageName Die zu ladende Bilddatei (Bilderstreifen) als lokaler Dateipfad, Url oder ImageList Name.
repeat Animation endlos wiederholen? "True" oder "False".
countX Die Anzahl der Einzelbilder in x-Richtung (horizontal).
countY Die Anzahl der Einzelbilder in y-Richtung (vertikal).
returns Der Name der animierten Bildshape.

AddPolygon(points)
Erstellt eine gefüllte Vieleck Shape (Intern: Polygon#).
points Ein Array mit den Koordinaten der Ecken des i-Polygons in der Form punkte[i][1] = x, punkte[i][2] = y, usw.

Die Mindestanzahl der Eckpunkte beträgt 3 (s. AddRegularPolygon bzw. LDFigures.AddRegularPolygon).

returns Der Name der Polygon Shape.
example Gleichschenkeliges Dreieck:
pkt[0]["X"] = 0
pkt[0]["Y"] = 0
pkt[1]["X"] = 80
pkt[1]["Y"] = 0
pkt[2]["X"] = 40
pkt[2]["Y"] = 70
LDShapes.AddPolygon(pkt)


AddRegularPolygon(numPoint,radius)
Erstellt eine gefüllte, regelmäßige Vieleck Shape (Intern: Polygon#). Erster Punkt auf (radius;0), Ankerpunkt auf (0;0).
S. AddPolygon, LDFigures.AddRegularPolygon.

numPoint Die Anzahl der Vieleck-Seiten bzw. -Ecken (ab 3).
radius Der -/+ Abstand vom Zentrum zu den Ecken (Bei neg. Werten um 180/numPoint [Grad] verdreht).
returns Der Name der regelmäßigen Vieleck Shape.

AddStar(numPoint,innerRadius,outerRadius)
Erstellt eine gefüllte, regelmäßige Stern Shape (Intern: Polygon#).
Spaßeffekte können mit neg. Abständen erzielt werden (s. LDFigures.AddRegularPolygon).

numPoint Die Anzahl der Sternpunkte (ab 3).
innerRadius Der -/+ Abstand vom Zentrum zu innereren Punkten.
outerRadius Der -/+ Abstand vom Zentrum zu äußeren Punkten.
returns Der Name der regelmäßigen Stern Shape.
example LDShapes.AddStar(4, -50,100)

AnimateOpacity(shapeName,interval,count)
Setzt eine Shape zur Animation seiner Transparenz bzw. Blinken (aus- und einblenden, asynchron).
shapeName Der Name der Shape/Steuerelement, welche zum Blinken animiert wird.
interval Das Intervall [ms] für einen vollständigen Blinkzyklus (0 stoppt das Blinken, zum Grundzustand).
count Die Anzahl der Blinkzyklen (<=0 für ständiges Blinken, zB. 1.5 endet mit gegenteiligem Grundzustand).

AnimateRotation(shapeName,interval,count)
Setzt eine Shape auf animierte Rotation um ihren Mittelpunkt (asynchron).
shapeName Der Name der drehenden Shape/Steuerelement.
interval Die Dauer [ms] für eine volle 360 Grad Drehung (0 stoppt die Rotation, <0 für Rotation im Gegenuhrzeigersinn).
interval = 60000/umin [ms] bzw.
umin = 60000/interval [1/min]
loopDelay = interval/360 [ms/°]

count Die Anzahl der Umdrehungen (0 für ständige Rotation, zB. 0.5 für Halbdrehung).

AnimateZoom(shapeName,interval,count,scaleX,scaleY)
Setzt eine Shape auf animierte Größenänderung (größer/kleiner, wie Shapes.Zoom auch für Textshapes, asynchron) um ihren Mittelpunkt.
shapeName Der Name der zu zoomenden Shape/Steuerelement.
interval Die Dauer [ms] für einen kompletten Zoomzyklus (0 stoppt das Zoomen).
count Die Anzahl von Zoom-Zyklen (0 für ständiges Zoomen, zB. 0.5 für Halbzyklus dh. nur in eine Richtung).
scaleX Der +/- Zoomfaktor in x-Richtung (1 Originalansicht).
scaleY Der +/- Zoomfaktor in y-Richtung (1 Originalansicht).

AnimationCount(shapeName)
Ermittelt die Anzahl der Einzelbilder in einer animierten Bildshape (zB. AnimatedGif).
shapeName Der Name der animierten Bildshape.
returns Die Gesamtzahl der Einzelbilder in der Animation, sonst 0 (zB. statische Gif).

AnimationInterval
Ermittelt oder setzt das Intervall in dem eine Shape-Animation abgespielt wird [ms] (Standard: 100).
0 stoppt alle laufenden Animationen, um zB. AnimationSet zu erlauben, ein ausgewähltes Einzelbild zu setzen.
Dieser interne Taktgeber betrifft alle animierten Bilder, die nicht pausiert wurden oder noch keinen vollen Zyklus durchlaufen haben (für nicht-endlos wiederholende Animationen).


AnimationPause(shapeName)
Pausiert eine Bilderanimation.
Pausierte Animationen können mittels AnimationSet trotzdem bestimmte Einzelbilder zeigen.

shapeName Der Name der animierten Bildshape.

AnimationResume(shapeName)
Setzt eine zuvor pausierte Bilderanimation wieder fort.
shapeName Der Name der animierten Bildshape.

AnimationSet(shapeName,image)
Setzt das aktuell anzuzeigende Bild aus einer animierten Bildshape.
shapeName Der Name der animierten Bildshape.
image Das anzuzeigende Einzelbild (beginnend mit 1).

BrushColour(shapeName,colour)
Setzt die Pinselfarbe für ein bestehendes Shape/Steuerelement (zB. Hintergrundfarbe für Button, TextBox, Textshape).
Für (LD)Controls.- oder Geometrieshapes (Ellipse usw.). Für Bildshapes s. LDShapes.SetImage.

shapeName Der Name der Shape/Steuerelement.
colour Die neue Pinselfarbe, "Transparent" für Transparenz (auch für Hintergrundbild aus ImageList), s. 'Shapes.SetOpacity'.
example "

BrushEllipse(brush,x,y,width,height)
Zeichnet eine Ellipse gefüllt mit einem Farbgradient. GraphicsWindow muß bereits initialisiert sein.
brush Ein zuvor erstellter Gradient- oder Bildpinsel (LDShapes.BrushGradient, LDShapes.BrushImage).
x Die x-Koordinate der Ellipse.
y Die y-Koordinate der Ellipse.
width Die Breite der Ellipse.
height Die Höhe der Ellipse.

BrushGradient(colours,orientation)
Erstellt einen linearen oder radialen Pinselfarbe Gradient (Intern: Brush#).
colours Ein Array mit (mind. 2) anzuwendenden Gradientfarben für den GW-/Shapehintergrund.
orientation Die Orientierung für den Farbübergang:
"H" Horizontal (li -> re)
"V" Vertikal (ob -> unt)
"DU" Diagonal rauf (liU -> reO)
"DD" Diagonal runter ("a","Z",0 usw., liO -> reU)
"R" Radial (Standard, oder "", inn -> auß)

returns Der Name für den Gradientpinsel.
example brush = LDShapes.BrushGradient("1=Blue;2=#80FF0000;", "")

BrushImage(imageName)
Erstellt einen Pinsel aus einem Bild (Intern: Brush#).
Diese Pinsel sollten auch überall dort funktionieren, wo BrushGradient verwendet werden kann.

imageName Das als Pinsel zu ladende Bild.
Rückgabewert von ImageList.LoadImage, lokale oder Netzwerk- Bilddatei.
"" erstellt Leerpinsel mit Farbe #6A5ACD (106,90,205)

returns Der Name des Bildpinsel.

BrushPolygon(brush,points)
Zeichnet ein i-Polygon gefüllt mit einem Farbgradient. GraphicsWindow muß bereits initialisiert sein.
brush Ein zuvor erstellter Gradient- oder Bildpinsel (LDShapes.BrushGradient, LDShapes.BrushImage).
points Ein Array mit Koordinaten für die i-Polygonecken in der Form punkte[i][1] = x, punkte[i][2] = y.
Die Anzahl der Punkte muß 3 oder mehr betragen.

example s. LDShapes.AddPolygon(points)

BrushRectangle(brush,x,y,width,height)
Zeichnet ein Rechteck gefüllt mit einem Farbgradient. GraphicsWindow muß bereits initialisiert sein.
brush Ein zuvor erstellter Gradient- oder Bildpinsel (LDShapes.BrushGradient, LDShapes.BrushImage).
x Die x-Koordinate des Rechtecks.
y Die y-Koordinate des Rechtecks.
width Die Breite des Rechtecks.
height Die Höhe des Rechtecks.

BrushRoundedRectangle(brush,x,y,width,height,radius)
Zeichnet ein abgerundetes Rechteck gefüllt mit einem Farbgradient. GraphicsWindow muß bereits initialisiert sein.
brush Ein zuvor erstellter Gradient- oder Bildpinsel (LDShapes.BrushGradient, LDShapes.BrushImage).
x Die x-Koordinate des Rechtecks.
y The y-Koordinate des Rechtecks.
width Die Breite des Rechtecks.
height Die Höhe des Rechtecks.
radius Der Radius der gerundeten Ecken.

BrushShape(shapeName,brush)
Setzt den Hintergrund für ein bestehendes Shape/Control als Farbgradient.
shapeName Der Name der Shape/Steuerelement.
brush Ein zuvor erstellter Gradient- oder Bildpinsel (LDShapes.BrushGradient, LDShapes.BrushImage).
example slider = LDControls.AddSlider(200,22,"H")
brush = LDShapes.BrushGradient("1=Red;2=Blue;","H")
LDShapes.BrushShape(slider,brush)


BrushText(text,background,foreground)
Erstellt einen Textpinsel (Intern: Brush#).
Diese Pinsel sollten auch überall dort funktionieren, wo BrushGradient verwendet werden kann.

text Der als Pinsel (Brush) zu verwendende Text. Dabei werden aktuelle GraphicsWindow.Font.. Eigenschaften angewandt.
background Die Hintergrundfarbe (BrushColor).
foreground Die Vordergrund-/Textfarbe (PenColor).
returns Der Name des Textpinsel.

Centre(shapeName,x,y)
Zentriert eine Shape (deren Mittelpunkt) an einem angegebenen Punkt. Auch für vergrößerte (gezoomte) Shapes.
shapeName Der Name der Shape/Steuerelement.
x Die x-Koordinate des neuen Shape Mittelpunktes.
y Die y-Koordinate des neuen Shape Mittelpunktes.

FastMove(shapeName,x,y)
Verschiebt eine Shape an eine neue Position.
Diese Methode ist für maximale Geschwindigkeit optimiert.

shapeName Der Name der zu verschiebenden Shape.
x Die x-Koordinate der neuen Position.
y Die y-Koordinate der neuen Position.

Font(shapeName,family,size,bold,italic)
Setzt einen neuen Schriftstil für eine bestehende Shape/Control (Textshape, Button, TextBox usw.).
shapeName Der Name der Shape/Steuerelement.
family Der Name der neuen Schriftart (erforderlich, zB. GraphicsWindow.FontName, s. LDUtilities.FontList für verfügbare Schriftarten).
size Die neue Schriftgröße (erforderlich).
bold Die neue Schrift als Fettdruck? "True" oder "False" (Standard).
italic Die neue Schrift kursiv? "True" oder "False" (Standard).

GetAllShapes()
Ermittelt die (internen) Name# aller aktuell erstellten Shapes/Controls als Array (zB. "1=Button#;2=Text#;3=Control#;4=..;").
Bzgl. Anzahl erstellter Elemente eines Types s. LDUtilities.GetNextMapIndex.

returns Ein Array mit Name# aller vorhandenen Shapes/Controls, indexiert ab 1 in Reihenfolge ihrer Erstellung.

GetAllShapesAt(x,y)
Ermittelt alle (Bild-, Geometrie-, Text-) Shapes# (nicht Controls) an einer bestimmten Position im GraphicsWindow als Array.
Dies kann zB. die Position des Mauszeigers sein. Nicht für verborgene Shape (Shapes.HideShape).

x Die x-Koordinate der Position.
y Die y-Koordinate der Position.
returns Ein Array mit den (internen) Namen# aller Shapes an dieser Position oder "False" falls dort keine Shape liegt.
Die ermittelten Namen# sind nach Z-Index sortiert, erst die im Vordergrund, dann die im Hintergrund befindlichen.


GetColour(shapeName)
Ermittelt BrushColor, Opacity und PenColor einer Shape (s. LDShapes.GetOpacity).
shapeName Der Name der Shape/Steuerelement.
returns Ein 3-elementiger Array mit:
1=BrushColor (Hintergrundfarbe, Pinselfarbe) als #AARRGGBB;
2=ShapeOpacity (Deckkraft) von 0 bis 100 [%] (0 transparent, 100 deckend);
3=PenColor (Vordergrundfarbe, Stiftfarbe) als #AARRGGBB;

example LDShapes.GetColour("Button#") 'gibt zB:
1=System.Windows.Media.LinearGradientBrush;
2=100;
3=#FF6A5ACD; (SlateBlue)


GetLeft(shapeName)
Ermittelt die linke Position des Ankerpunktes einer Shape (funktioniert auch für Dreiecke, Polygone und Linien). Unbeeinflußt von Shapes.Zoom, -Rotate oder LDShapes.ReSize.
Funktioniert auch für Shapes während einer Animation.

shapeName Der Name der Shape/Steuerelement.
returns Die x-Koordinate der linken (oberen) Ecke der Shape.

GetOpacity(shapeName)
Ermittelt die Deckkraft einer Shape (s. LDShapes.GetColour).
shapeName Der Name der Shape/Steuerelement.
returns Der Wert der Deckkraft (0 bis 100 [%]). 0 ist völlig transparent und 100 ist völlig deckend.

GetProperties(shapeName)
Ermittelt alle verfügbaren Eigenschaften einer Shape/Control als Array. Dies sind NET UIElement Eigenschaften.
shapeName Der Name der Shape/Steuerelement.
returns Ein Array aller verfügbaren Eigenschaften und deren Werte (zB: Fill, Height, IsMouseOver, IsVisible, Name, Opacity, Stroke, Width, usw.) bei Erfolg, sonst Fehlermeldung.
example http://msdn.microsoft.com/library/system.type.getproperties.aspx
'Alle Eigenschaften zu 'shp':
props = LDShapes.GetProperties(shp)
idcs = Array.GetAllIndices(props)
For n = 1 To Array.GetItemCount(idcs)
TextWindow.WriteLine(idcs[n] +"="+ props[idcs[n]])
EndFor


GetProperty(shapeName,property)
Ermittelt eine spezielle Eigenschaft einer Shape/Control. Dies ist eine NET UIElement Eigenschaft.
shapeName Der Name der Shape/Steuerelement.
property Der (buchstabengetreue) Name der zu ermittelnden Eigenschaft (zB: Fill, Height, IsMouseOver, IsVisible, Name, Opacity, Stroke, Width, usw.).
returns Der Wert der Eigenschaft bei Erfolg, sonst Fehlermeldung.
example 'Markierungsfarbe in TB
LDShapes.GetProperty(tb, "SelectionBrush") 'Standard #FF3399FF
http://msdn.microsoft.com/library/system.type.getproperty.aspx


GetTop(shapeName)
Ermittelt die obere Position des Ankerpunktes einer Shape (funktioniert auch für Dreiecke, Polygone und Linien). Unbeeinflußt von Shapes.Zoom, -Rotate oder LDShapes.ReSize.
Funktioniert auch für Shapes während einer Animation.

shapeName Der Name der Shape/Steuerelement.
returns Die y-Koordinate der oberen (linken) Ecke der Shape.

Height(shapeName)
Ermittelt die tatsächlich sichtbare Höhe einer Shape (umgebende Rechteckhöhe bei Erstellung, angenommene PenWidth = 0).
shapeName Der Name der Shape/Steuerelement.
returns Die sichtbare Höhe der Shape.

LastEventShape
Ermittelt den Name der letzten Shape, für die ein (ShapeEvent) Ereignis aufgetreten ist (s. SetShapeEvent).

LastEventType
Ermittelt den letzten Shape-Ereignistyp, der in einem (ShapeEvent) Ereignis aufgetreten ist (s. SetShapeEvent). Mögliche Ereignisse:
"MouseDown", "MouseUp"
"MouseEnter", "MouseLeave"
"GotFocus", "LostFocus"

example "MouseDown" und "MouseUp" Ereignisse nicht für Control's (Steuerelemente) linke Maustaste. Jedoch für rechte/mittlere Maustaste auf Slider/Button.

Move(shapeName,x,y)
Verschiebt ein Dreieck oder Polygon an dessen linker, oberer Position (Ankerpunkt).
Diese Methode funktioniert auch für Linien- (Shapes.AddLine) und Bildshapes (Shapes.AddImage).

shapeName Der Name der Shape (Dreieck-, Polygon-, Linien- oder Bildshape).
x Die neue (linke) x-Koordinate der Shape.
y Die neue (obere) y-Koordinate der Shape.

MoveLine(shapeName,x1,y1,x2,y2)
Verschiebt eine Linien-Shape (Intern: Line#). Die Länge der Linie wird je nach Zielkoordinaten ev. verändert.
shapeName Der Name der Shape (eine Linie, erstellt mit Shapes.AddLine).
x1 Die x-Koordinate für Zielpunkt 1 der Linie.
y1 Die y-Koordinate für Zielpunkt 1 der Linie.
x2 Die x-Koordinate für Zielpunkt 2 der Linie.
y2 Die y-Koordinate für Zielpunkt 2 der Linie.

MovePolygon(shapeName,points)
Verschiebt ein gefülltes Vieleck-Shape (Intern: Polygon#).
shapeName Der Name der Shape (ein Polygon, erstellt mit LDShapes.AddPolygon).
points Ein Array mit den neuen Eck-Koordinaten des i-Polygons in der Form punkte[i][1] = x, punkte[i][2] = y, usw.

Die Mindestanzahl der Eckpunkte beträgt 3 und kann für jeden Aufruf geändert werden.


MoveTriangle(shapeName,x1,y1,x2,y2,x3,y3)
Verschiebt ein Dreieck-Shape (Intern: Triangle#). Die Seitenlänge(n), Form, Fläche werden je nach Zielkoordinaten ev. verändert
shapeName Der Name der Shape (ein Dreieck, erstellt mit Shapes.AddTriangle).
x1 Die x-Koordinate für Zielpunkt 1 des Dreieckes.
y1 Die y-Koordinate für Zielpunkt 1 des Dreieckes.
x2 Die x-Koordinate für Zielpunkt 2 des Dreieckes.
y2 Die y-Koordinate für Zielpunkt 2 des Dreieckes.
x3 Die x-Koordinate für Zielpunkt 3 des Dreieckes.
y3 Die y-Koordinate für Zielpunkt 3 des Dreieckes.

Overlap(shape1,shape2)
Ermittelt ob sich die Ränder zweier Shapes beliebiger Form überschneiden (Kollisionserkennung).
shape1 darf nicht rotiert oder skaliert (gezoomt) sein.
Für weitere Überschneidungsarten s. 'OverlapDetail'.

shape1 Der Name der ersten Shape (unskaliert, nicht gedreht).
shape2 Der Name der zweiten Shape.
returns "True" wenn sich beide Shapes überlappen (gemeinsame Pixel besitzen), sonst "False".

OverlapBox(shape1,shape2)
Ermittelt ob sich die Ränder zweier eckiger Shapes überschneiden (Kollisionserkennung).
Für weitere Überschneidungsarten s. 'OverlapDetail'.

shape1 Der Name der ersten Shape.
shape2 Der Name der zweiten Shape.
returns "True" wenn sich beide Shapes überlappen (gemeinsame Pixel besitzen), sonst "False".

OverlapCircle(shape1,shape2)
Ermittelt ob sich die Ränder zweier runder Shapes überschneiden (Kollisionserkennung).
Für weitere Überschneidungsarten s. 'OverlapDetail'.

shape1 Der Name der ersten Shape.
shape2 Der Name der zweiten Shape.
returns "True" wenn sich beide Shapes überlappen (gemeinsame Pixel besitzen), sonst "False".

OverlapDetail
Ermittelt, nach Aufruf einer 'Overlap..' Methode, zusätzliche Details zu Überschneidungen.

Mögliche Ergebnisse:
"Empty" keine Überlappung
"FullyContains" shape1 gänzlich innerhalb von shape2
"Intersects" partielle Überlappung
"FullyInside" shape2 gänzlich innerhalb von shape1


PenColour(shapeName,colour)
Setzt die Stiftfarbe für ein bestehendes Shape/Control (zB. Textfarbe in Button, TextBox oder Textshape, Turtle-Spur "_turtleLine#").
shapeName Der Name der Shape/Steuerelement.
colour Die neue Stiftfarbe (zB. "Transparent" verbirgt Buttontext).

PenStyle(shapeName,dash,space)
Setzt den Zeichenstil des Stiftes für ein bestehendes Geometrieshape (gestrichelt, gepunktet usw. als Vielfaches von PenWidth, +/-).
shapeName Der Name der Shape.
dash Die einzelne Strichlänge oder 0 (keine Linie).
space Die Länge der Unterbrechungen oder 0 (durchgezogen).

PenWidth(shapeName,width)
Setzt die Strichbreite des Stiftes für ein bestehendes Geometrieshape.
shapeName Der Name der Shape/Steuerelement.
width Die neue Strichbreite.

RasteriseTurtleLines()
Rastert alle Turtle-Spur Linien (Intern: "_turtleLine#" Linienshape).
Bei großer Anzahl an Turtle-Spuren kann die Programmleistung durch die Anzahl vorhandener Linenshapes (Spuren) abnehmen.
Hiermit werden diese Turtle-Spuren von Linienshapes zu Hintergrundzeichnungen konvertiert.


RemoveTurtleLines()
Entfernt alle Turtle-Spur Linien (Intern: "_turtleLine#" Linienshape).

ResetTurtle()
Setzt die Turtle nach Aufruf von GW.Clear oder Turtle.Hide an ihre letzte Position zurück und blendet diese stets ein.

ReSize(shapeName,width,height)
Setzt optisch eine neue Breite und Höhe für ein bestehendes Shape/Control (uneingeschränkte Zoom-Möglichkeit, s. Shapes.Zoom, nicht für Text-Shapes).
Die Größenänderung erfolgt um den Mittelpunk der Shape nur optisch, dh. dieser und die tatsächlichen Abmessungen der Form bleiben erhalten.
s.a. SetSize, bzw. Controls.SetSize.

shapeName Der Name der Shape/Steuerelement.
width Die neue Breite der Shape.
height Die neue Höhe der Shape.

RotateAbout(shapeName,x,y,angle)
Rotiert eine Shape optisch um einen angegebenen Punkt (Ankerpunkt bleibt unverändert).
shapeName Der Name der Shape.
x Die x-Koordinate des Pols um den die Shape gedreht wird.
y Die y-Koordinate des Pols um den die Shape gedreht wird.
angle Der Winkel [Grad] um den die Shape gedreht wird (+/- für im/gegen Uhrzeigersinn).

SetImage(shapeName,imageName)
Setzt oder ändert ein Bild auf einem Button oder Bildshape (Intern: ImageList#+1). Bildgröße von ImageList/Dateipfad wird automatisch an Größe der Bildshape angepasst bzw. Buttongröße wird an Bildgröße angepasst (Buttonbreite/-höhe = Bildbreite/-höhe + 4).
ImageList Bild kann danach aus ImageList entfernt werden (LDImage.Remove). Entfernen des Bildes durch Ersetzen oder "none".

shapeName Der Name des Button oder Bildshape.
imageName Das einzusetzende Bild als ImageList Name, Dateipfad oder Url. Sonstiger "string" oder Wert (außer "") entfernt Bild/Titel und setzt Buttongröße auf 4x4 bzw. Bildshape auf 0x0 Pxl.
example Eine Leershape von Shapes.AddImage("") wird nicht akzeptiert.

SetProperty(shapeName,property,value)
Setzt den Wert einer Eigenschaft für eine Shape/Control. Dies ist eine NET UIElement Eigenschaft. Fehlermeldung bei Mißerfolg.
shapeName Der Name der Shape/Steuerelement.
property Der (buchstabengetreue) Name der zu setzenden Eigenschaft (zB: Fill, Height, IsMouseOver, IsVisible, Name, Opacity, Stroke, Width, usw.).
value Der zu setzende Eigenschaftswert.
example 'Markierungsfarbe in TB
LDShapes.SetProperty(tb, "SelectionBrush", "#FFRRGGBB")
http://msdn.microsoft.com/library/system.reflection.propertyinfo.setvalue.aspx


SetShapeEvent(shapeName)
Registriert eine bereits erstellte Shape/Control zum Erkennen von Mausereignissen (per ShapeEvent) wie:
MouseDown, MouseUp,
MouseEnter, MouseLeave
(für Maus- Unten/Oben, Ein-/Austritt) und
GotFocus und LostFocus.

shapeName Der Name der Shape/Steuerelement (für Controls kein MouseDown/-Up).

SetSize(shapeName,width,height)
Setzt die Größe einer bestehenden Shape, als ob sie in dieser Größe neu erstellt wurde (auch für Text-Shapes).
Die Position (l.o. Ankerpunkt) bleibt unverändert (ähnlich Controls.SetSize), s.a. ReSize.

shapeName Der Name der Shape/Steuerelement.
width Die neue Breite der Shape.
height Die neue Höhe der Shape.

SetTurtleImage(imageName,size)
Setzt ein alternatives Turtle-Bild anstatt der orig. Schildkröte (Intern: "_turtle" Bildshape) und zeigt dieses auch sofort an (Turtle.Show ist unnötig).
imageName Das zu ladende Alternativbild für die Turtle.
Rückgabewert von ImageList.LoadImage, lokale oder Netzwerk-Bilddatei (bmp, gif, ico, jpg, png).

size Die Abmessungen/Skalierung (size=B=H) für das neue Turtle-Bild mit oder ohne "" (Standard Turtle ist 16x16 Pxl).
"" zeigt kein Turtle-Bild. Unquadratische Originalbilder werden verzerrt dargestellt.
Das neue Turtle-Bild wird am Mittelpunkt zentriert.


ShapeEvent
Ereignisaufruf wenn ein Shape-Ereignis für eine (SetShapeEvent-) registrierte Shape/Control erkannt wird. Die Shape/Control muß bereits erstellt und (mittels SetShapeEvent) dafür registriert sein.

Skew(shapeName,angleX,angleY)
Abschrägen einer Shape um die angegebenen Winkel um den Shapemittelpunkt (2D Neigung, Scherung).
shapeName Der Name der abzuschrägenden Shape.
angleX Der -/+ Scherwinkel [Grad] in x-Richtung (Neigungswinkel ab y-Achse im/gegen Uhrzeigersinn, Standard: 0).
angleY Der -/+ Scherwinkel [Grad] in y-Richtung (Neigungswinkel ab x-Achse im/gegen Uhrzeigersinn, Standard: 0).

Width(shapeName)
Ermittelt die tatsächlich sichtbare Breite einer Shape (umgebende Rechteckbreite bei Erstellung, angenommene PenWidth = 0).
shapeName Der Name der Shape/Steuerelement.
returns Die sichtbare Breite der Shape.

ZIndex(shapeName,z_index)
Setzt den Z-Index (Schichtposition) für eine Shape/Control (<0 im Hintergrund, >0 im Vordergrund, Standard: 0).
shapeName Der Name der Shape/Steuerelement.
z_index Der Z-Index (0, pos. oder neg. Ganzzahl).
example http://msdn.microsoft.com/library/windows/apps/system.windows.controls.canvas.setzindex.aspx

ZoomAll(scaleX,scaleY)
Vergrößert oder verkleinert alle Shapes im GraphicsWindow optisch mittels der angegebenen Zoomwerte.
Die Größenänderungen erfolgen im Mittelpunkt jeder Shape nur optisch, dh. dieser, der Ankerpunkt und die tatsächlichen Abmessungen der Basisshape bleiben erhalten.
Alle längenbezogenen Werte/Vektoren (zB. in LDPhysics) werden proportional mitskaliert.

scaleX Der -/+ Zoomfaktor in x-Richtung (1 Originalansicht).
scaleY Der -/+ Zoomfaktor in y-Richtung (1 Originalansicht).