| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY wird von NVIDIA zum Händler des Jahres gewählt – zum dritten Mal in Folge, eine Pressemitteilung
|
Autor
|
Thema: Pixelbilder einfügen (1721 mal gelesen)
|
thomasbernd Mitglied
Beiträge: 14 Registriert: 09.07.2007
|
erstellt am: 09. Jul. 2007 15:10 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, dies ist meine erster Beitrag habe ein riesiges Problem... ich soll möglichst kurzfristig ca.160 Pixelbilder in AutoCAD einfügen,schneiden,spiegeln oder drehen, in x- und y-Richtung scalieren und auf Endposition drehen. Von Hand gehe ich folgende Schritte durch: 1. Pixelbild einfügen (ohne Pfadstruktur!) 2. Pixelbild schneiden 3. Block erstellen des Pixelbildes 4. Block einfügen mit Faktoren in x- und y- Richtung 5. Block auflösen 6. Pixelbild auf gewünschte stelle verschieben und drehen .... das funkttioniert auch ... aber dauert sehr sehr sehr lange! Jetzt habe ich in VBA ein Programm geschrieben das bis auf zwei Sachen Perfekt funktioniert(ich bin Anfänger). Siehe Punkt 7. Der Block mit dem Pixelbild lässt sich nicht auflösen. Weiterhin ist der Pfad des Pixelbilds ist immer dabei, d.h. wenn ich die DWG.Datei weiter gebe fehlen die Pixelbilder. Das Programm hat folgenden logischen Ablauf. 1. Einfügen Pixelbild (Nullpunkt) 2. in 1. oder 2. oder 3. oder 4. Quadrant legen 3. Schneidpunkte Pixel Orginal 4. gewollte Schnittpunkte Pixelbild neue größe angeben 5. Pixelbild löschen 6. Pixelbild als Block einfügen mit Faktoren 7. Pixelbild Block auflösen !!! GEHT NICHT 8. Pixelbild in 1. oder 2. oder 3. oder 4. Quadrant legen 9. Pixelbild schneiden mit neue Schneidpunkte 10. Pixelbild verschieben 11. Pixelbild drehen Kenne mich in LISP nicht aus geht es evtl. mit LISP viel einfacher?? ICH BITTE UM HILFE Vielen Dank Grüße ThomasBernd
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
skyzem Mitglied
Beiträge: 400 Registriert: 30.08.2006 Win 7 Enterprise x64 Cornerstone 5.3.0.5 Minitab 16.2.1.0 Excel 2010 Notepad++ 6.3.1 Putty 0.63 Calc.exe
|
erstellt am: 09. Jul. 2007 15:35 <-- editieren / zitieren --> Unities abgeben: Nur für thomasbernd
Hallo. Zitat: Original erstellt von thomasbernd: ... Weiterhin ist der Pfad des Pixelbilds ist immer dabei, d.h. wenn ich die DWG.Datei weiter gebe fehlen die Pixelbilder.
Ich habe LT 2007 mit Extender (kann somit auch Bilder einfügen). Bei mir sind die Bilder jedoch immer nur als Verknüpfung in einer DWG. Ich wüsste nicht wie ich sie einbetten könnte damit sie in der DWG gespeichert. geht das beim "grossen"? von Lisp habe ich leider nicht die geringste Ahnung. mfg skyzem
------------------ Keine Signatur, ist auch eine Signatur [Diese Nachricht wurde von skyzem am 09. Jul. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
thomasbernd Mitglied
Beiträge: 14 Registriert: 09.07.2007
|
erstellt am: 09. Jul. 2007 16:21 <-- editieren / zitieren --> Unities abgeben:
|
Geos Mitglied Vermessungstechniker i.R.
Beiträge: 1017 Registriert: 21.09.2001 ACAD Map 2010, Win 7 Pro eigene Lisp's<P>HW: Core i7 860, 2.8 GHz 3.3 GB, NVIDIA GeForce GTS 250
|
erstellt am: 09. Jul. 2007 17:43 <-- editieren / zitieren --> Unities abgeben: Nur für thomasbernd
Zumindest bis Version 2005 werden Pixelbilder nicht Bestandteil der DWG - müssen also zusätzlich geliefert werden. Ungleich skalierte Blockreferenzen konnten früher einmal nicht aufgelöst werden - ob's damit zusammenhängt? Hab keine Ahnung von VBA. ------------------ Schöne Grüße Ernst www.geopaint.at Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
thomasbernd Mitglied
Beiträge: 14 Registriert: 09.07.2007
|
erstellt am: 10. Jul. 2007 16:57 <-- editieren / zitieren --> Unities abgeben:
|
mkl-cad Mitglied Technischer Zeichner
Beiträge: 378 Registriert: 23.07.2003 ACAD 2002 Express Tools 1-9 Architektural Desktop Windows XP Server Windows 2003 3 GHz Rechner 1 GB RAM 80 GB Festplatte ATI FireGL V3100 2 17" Flachbildschirme
|
erstellt am: 11. Jul. 2007 10:54 <-- editieren / zitieren --> Unities abgeben: Nur für thomasbernd
Hallo Pixelbilder können sehrwohl auch schon ab ACAD 2000 in die Zeichnung eingebettet werden wenn sie als OLE-Objekte eingefügt werden. Kann ich aber nur von abraten. Erst recht bei vielen Pixelbildern, da die Datenmenge sehr schnell sehr groß wird. ------------------ Martin Viele Grüße aus dem schönen Münsterland! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Schobi Mitglied Konstrukteur
Beiträge: 5 Registriert: 31.05.2005
|
erstellt am: 15. Aug. 2007 14:51 <-- editieren / zitieren --> Unities abgeben: Nur für thomasbernd
Hallo Thomasbernd, auch ich möchte Pixelbilder, aber weit mehr als 3000, in jeweils eine .dwg einlesen und unter dem entsprechenden Namen aus dem Pixelbild abspeichern. Auch ich habe mich in VBA versucht, bei mir scheitert es aber schon beim importieren der Pixelbilder, der rest dafür funzt. Kannst du mir sagen, wie du in VBA Pixelbilder importierst. Ich habe folgende Zeilen versucht, jedoch ohne Erfolg: Sub Pixelbilder_importieren() Dim ImportDatei As String Dim Einfuegepunkt(0 To 2) As Double Dim Skalierung As Double Dim RetVal As Object ImportDatei = "...GESCANNT\IN_ORDNUNG\i-0001" Einfuegepunkt(0) = 0#: Einfuegepunkt(1) = 0#: Einfuegepunkt(2) = 0# Skalierung = 1# RetVal = ThisDrawing.Import(ImportDatei, Einfuegepunkt, Skalierung) End Sub Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
thomasbernd Mitglied
Beiträge: 14 Registriert: 09.07.2007
|
erstellt am: 21. Aug. 2007 07:57 <-- editieren / zitieren --> Unities abgeben:
Hi, Beispiele in AutoCAD sind nicht schlecht. Sub Example_AddRaster() ' This example adds a raster image in model space. ' This example uses a file named "raster.jpg." ' You should change this example to use ' a raster file on your computer. Dim insertionPoint(0 To 2) As Double Dim scalefactor As Double Dim rotationAngle As Double Dim imageName As String Dim rasterObj As AcadRasterImage imageName = "C:\raster.jpg" insertionPoint(0) = 5#: insertionPoint(1) = 5#: insertionPoint(2) = 0# scalefactor = 1# rotationAngle = 0 On Error Resume Next ' Creates a raster image in model space Set rasterObj = ThisDrawing.ModelSpace.AddRaster(imageName, insertionPoint, scalefactor, rotationAngle) If Err.Description = "File error" Then MsgBox imageName & " could not be found." Exit Sub End If ZoomExtents End Sub
Gruß Thomasbernd
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |