Hallo!
Ich habe ein Problem beim Zentrieren einer Zeichnung per VBA/Delphi.
Ich biete einen eigenen Plotdialog, in dem eine Checkbox ist, mit der die Zeichnung zentriert werden soll! Ich hole mir aus dem ActiveLayout den Ursprung der Zeichnung, setze dann CenterPlot auf True und ermittel mir per PlotOrigin die Koordinaten des Ursprungs. Aber die richtigen Koordinaten zum Zentrieren werden erst nach dem dritten Mal regenerieren übernommen!
Hier mal mein Delphi-Code:
acadapp := GetActiveOleObject('AutoCAD.Application.16') as AcadApplication;
acaddoc := acadapp.ActiveDocument;
{Zurücksetzen des Ursprungs}
OriginCen := acaddoc.ActiveLayout;
...
if ChBcentreplot.Checked then
begin
...
end
else
begin
OriginCen.CenterPlot := True;
//Auslesen der Koordinaten und setzen in Textfelder im Plotdialog
Value := OriginCen.PlotOrigin;
EdXOrigin.Text:= FloatToStr(Value[0]);
EdYOrigin.Text:= FloatToStr(Value[1]);
//Setzen der Zentrierung
OriginCen.Set_PlotOrigin(Value);
end;
acaddoc.Regen(acActiveViewport);
Hat irgendjemand eine Idee, warum das Zentrieren erst nach mehrmaligem Aufruf der Funktion läuft bzw. ob das so überhaupt funktioniert?
Besten Dank für jede Hilfe!
Gruß,
Uwe
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP