Splines

Konzeptionelles, Technisches, Termine, Fragen zum Hersteller usw.

Moderator: Moderatoren

Antworten
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Splines

Beitrag von Rudolf »

Hallo,
versuche gerade mit QUICKPDF Splines aus einem Array mit Vektordaten zu zeichnen, habe aber ein Problem mit der Umsetzung, vielleicht kann mir hier jemand helfen. Ich möchte die Splines darsetellen und dann das PDF als JPG speichern, soweit kein Problem.
Ich habe ein Array mit einzelnen sog. Strokes, das ist eine Gruppe zusammenhängender Vektoren, z.B. eine 5teilige Zickzack Linie. Ich habe Anfang und Ende sowie jeden Punkt an dem sich die Richtung ändert. Mit QUICKPDF habe ich :StartPath(STROKES_X,STROKES_Y), AddCurveToPath (siehe unten) und .:DrawPath(0). Nur weiß ich nicht wie ich die 3 Koordinatenpaare in AddCurveToPath verwenden soll. Ich muss also Anfang, einen Kontrollpunkt und das Ende angeben. Ich muss mein Array also abarbeiten und z.B. die ersten drei Punkte als Parameter übergeben und dann die nächsten drei. Was aber wenn zum Schluss nur ein oder zwei Punkte überbleiben ? Kann es stimmen dass die Kurve aus diesen Tripel entsteht ? Hat jemand sowas schon mal gelöst ?
Grüße
Rudolf


http://www.debenu.com/docs/pdf_library_ ... rawing.php

AddCurveToPath
Vector graphics, Path definition and drawing
Description
Adds a bezier curve to the current path.
The curve is drawn from the last point to the point defined by (EndX, EndY).
(CtAX, CtAY) and (CtBX, CtBY) define the two bezier control points.
Syntax
Delphi
function TQuickPDF0723.AddCurveToPath(CtAX, CtAY, CtBX, CtBY, EndX,
EndY: Double): Integer;
ActiveX
Function QuickPDF0723.PDFLibrary::AddCurveToPath(CtAX As Double,
CtAY As Double, CtBX As Double, CtBY As Double,
EndX As Double, EndY As Double) As Long
DLL
int QuickPDFAddCurveToPath(int InstanceID, double CtAX, double CtAY,
double CtBX, double CtBY, double EndX, double EndY)
Parameters
CtAX The horizontal co-ordinate of the first control point
CtAY The vertical co-ordinate of the first control point
CtBX The horizontal co-ordinate of the second control point
CtBY The vertical co-ordinate of the second control point
EndX The horizontal co-ordinate of the end point of the bezier curve
EndY The vertical co-ordinate of the end point of the bezier curve
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Splines

Beitrag von AUGE_OHR »

so wie ich das verstehe kann die QuickPDF Function "nur" 3 Paar Punkte ...
man müsste die a 3 Paar (x,y) aufteilen wobei der letzte Punkt der ersten Gruppe der erste Punkt der nächsten Gruppe wäre.
gruss by OHR
Jimmy
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: Splines

Beitrag von Rudolf »

Hallo Jimmy,
aber was mache ich wenn es sich zum Schluss nicht auf 3 Punkte ausgeht ?mir fehlt dann das Ende in der Darstellung. Leider gibt es kein Beispiel in QUICKPDF
Grüße
Rudolf
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: Splines

Beitrag von Martin Altmann »

Rudolf,
Du hast bei einem Spline immer drei Punkte - wenn nicht, wäre es eine Linie ;-)
Und genau die kannst du zur Not als letztes Malen (wenn du nur einen Punkt hast). Startpunkt ist dann der Endpunkt des letzten Splines.

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: Splines

Beitrag von Rudolf »

Hallo Martin,
habe auch überlegt einfach einen Mini Spline am Schluss zu machen indem ich Punkte anhänge die nur minimal größer sind. Werde mal ein paar Tests machen.
Grüße
Rudolf
Antworten