Autor Beitrag
Bronstein
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 578
Erhaltene Danke: 1

WIN XP
Delphi 6 / Delphi 2006 / Delphi XE
BeitragVerfasst: Fr 05.03.10 07:58 
Hallo,
ich habe eine DXF-Zeichnung im AutoCAD Format AC1014 und möchte diese mit Hilfe von einem selbst geschriebenen Programm manipulieren, sprich einzelne Bauteile herrauslöschen, in dem ich den Positionsbezeichner angebe.

Ich habe mal in Delphi eine kleiner Funktion geschrieben, die auch teilweise funktioniert.

Das Bauteile BR500, kann man damit löschen (links unten)
Beim Bauteil X28 funktioniert das aber nicht (in der Mitte)

So sieht meine Funktion aus:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
function LoescheBT(Bauteil: String; DXF: TStringList):Boolean;
var
  check: Boolean;
  t, y, status: Integer;
begin
  check := false;
  t := 0;
  while check = false do
  begin
    if Bauteil = DXF[t] then
    begin
      //AcDbEntintiy
      while t > 0 do
      begin
        if DXF[t] = 'AcDbEntity' then
        begin
          dec(t);
          break;
        end;
        dec(t);
      end;
      y := t;
      status := 0;
      while t < DXF.Count-1 do
      begin
        if (DXF[t+6] = 'AcDbText'and (status = 2then
        begin
          check := true;
          break;
        end;
        if (DXF[t] = 'AcDbText'then
          inc(status);
        Form1.Memo2.Lines.Add(DXF[t]);
        DXF.Delete(t);
        //inc(t);
      end;
    end;
    inc(t);
    if t > DXF.Count-1 then
      break;
  end;
  result := check;
end;


Im Anhang habe ich mal die Zeichnung von der ich spreche


Moderiert von user profile iconNarses: Topic aus Multimedia / Grafik verschoben am Fr 05.03.2010 um 17:30
Einloggen, um Attachments anzusehen!
_________________
Es gibt keine dummen Fragen nur dumme Antworten!!!
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Fr 05.03.10 10:36 
Definiere "funktioniert nicht"...
Fehlermeldung? Schon mit dem Debugger durchgegangen?

_________________
PROGRAMMER: A device for converting coffee into software.
Bronstein Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 578
Erhaltene Danke: 1

WIN XP
Delphi 6 / Delphi 2006 / Delphi XE
BeitragVerfasst: Fr 05.03.10 17:34 
Die Funktion geht schon in Delphi.
Es geht mir um den Aufbau eines DXF Files.
Denn das Bauteil X28 ist immernoch vorhanden, nur die Beschriftung wird gelöscht. Die Form des Bauteils bleibt aber erhalten.

_________________
Es gibt keine dummen Fragen nur dumme Antworten!!!