Also mit dem ARC-Kommando würde ich zwei Halbkreise zeichnen können. Folgende Pathdaten ergeben z.B. ein Rechteck, darin ein Kreis:
Delphi-Quellcode:
M230,227 a1,1,0,0,1,140,140 M230,227 a1,1,0,0,0,140,140 // Der Kreis
M198,198 L399,198 L399,399 L198,399 L198,198 // Das Quadrat
Sie auch anliegenden Screenshot.
I.d.R. wäre es ja am einfachsten, man geht von den Daten des Quadrats aus und transformiert diese in die Daten, die man mit der ARC-Function verwenden muss.
Diese Transformation macht mir gerade Schwierigkeiten, ich finde einfach nicht raus, wie das zu machen wäre (die Beispiel-Daten habe ich nur per "trial and error" rausgefunden).