|
AutoCAD ARX Object : Lisp to .NET
veydan am 03.04.2010 um 16:26 Uhr (0)
Es gibt folgende Eigenschaften die naheliegen mit dem Problem etwas zu tun zu haben:Habe die Properties mit einer Erklärung ergänzt so wie ich dass Verstanden habe Viewport.Height = Höhe des Viewports im LayoutViewport.Width= Breite des Viewports im LayoutViewPort.CenterPoint = einfach der Mittelpunkt vom Viewport im LayoutViewPort.ViewHeight = Ist bei einem manuell erstelltem VP gleich dem .HeightViewPort.ViewDirection = ? benötigt einen 3D VektorViewPort.ViewCenter = Ist bei einem manuell erstelltem VP g ...
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
alfred neswadba am 03.04.2010 um 16:55 Uhr (0)
Hi,schau mal das hier (hab jetzt keinen VS-Rechner bei der Hand), da gehts zwar um Drehung, aber die verwendeten Eigenschaften sind ersichtlich.- alfred -------------------www.hollaus.at
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
veydan am 04.04.2010 um 15:22 Uhr (0)
Hallo!Danke für den Link, aber wirklich gelöst wurde mein problem damit nicht.Hier mal mein Code:Code:Dim vp As Viewport = New Viewportvp.Width = 200vp.Height = 100vp.ViewDirection = Geometry.Vector3d.ZAxisvp.ViewTarget = New Geometry.Point3d(300, 200, 0)vp.ViewCenter = New Geometry.Point2d(200, 50)Mein erstes Problem ist, dass das Ansichtsfenster immer so positioniert ist, dass der Mittelpunt genau auf 0,0,0 liegt, egal welche Einstellung ich bei ViewCenter angebe.Das zweite Problem ist, dass das Fenster ...
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
veydan am 06.04.2010 um 09:54 Uhr (0)
So zur besseren Übersicht, ein neuer PostEin Problem gibts jetzt trotzdem noch -.-bei mir wird der ViewPort immer im Modell erstellt.hier der Code wo er hinzugefügt wird(gleich nach dem kopieren der Elemente ins leere Layout, dass auch funktioniert)tLayoutBlDef ist auch das Layout Objekt dass ich beim kopieren der Elemente vom Modell ins leere Layout verwende.Code: tLayoutBlDef.AppendEntity(vp)tTrAct.AddNewlyCreatedDBObject(vp, True)Muss beim Hinzufügen des ViewPorts das leere Layout aktiv sein?mfg[Diese ...
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
alfred neswadba am 06.04.2010 um 10:02 Uhr (0)
Hi, bei mir wird der ViewPort immer im Modell erstelltWenn das wirklich geht (ein ViewPort im Modellbereich), dann lass mir eine solche Zeichnung bitte zukommen (nachdem Du _AUDIT gemacht hast). Denn sollte das gehen, dann fallen mir eine Menge Dummheiten ein, die man da machen könnte. Ich kanns nur nicht glauben. Muss beim Hinzufügen des ViewPorts das leere Layout aktiv sein?Nein, denn Du hast ja im Codeschnippsel angegeben, wo dieser ViewPort hinzugefügt werden soll: tLayoutBlDef.AppendEntity(vp) und dam ...
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
alfred neswadba am 30.01.2010 um 12:30 Uhr (0)
Hi,lass mal wissen, ob dieses bei Dir funktioniert. Vorsicht, die Funktion getEmptyLayout hab ich modifiziert.Code: Public Shared Sub CADde_CreateLayoutView() Dim tAcadDoc As ApplicationServices.Document = ApplicationServices.Application.DocumentManager.MdiActiveDocument Dim tDocLock As ApplicationServices.DocumentLock = Nothing Dim tTrAct As DatabaseServices.Transaction = Nothing Dim tLayoutBlDef As DatabaseServices.BlockTableRecord Try Dim tAcadDocDB As DatabaseServices.Database = tAcadDoc ...
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
veydan am 07.04.2010 um 13:23 Uhr (0)
Ist das ViewTarget Propery der Punkt, der in der Mitte des Viewports liegt?Bei mir ist die Ansicht immer verschoben.Meine Berechnung, Rahmen liegt im Modell und innerhalb des Rahmens das gezeichnete.Dann merk ich mir Position und Größe des Rahmens. Nachdem er im Layout drüben ist, erstelle ich das Ansichsfenster und stelle den ViewTarget genau auf den Mittelwert. Quasi Position.x + Halbe Rahmenbreite und Position.y + Halbe Rahmenhöhe.dann müsste die Zeichnung genau in das Ansichtsfenster passen.Tut es nur ...
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
veydan am 19.04.2010 um 15:06 Uhr (0)
Hallo!Ich möchte bei der Kopierfunktion den "neuen" Rahmen im Layout(der SK soll natürlich dementsprechend mitwandern) gerne auf 0,0,0 haben. Kann ich das über die Matrix steuern? oder muss ich die Objekte nachträglich ändern über das Position Property?hier nochmal der Code vom kopieren:Code: tLayoutBlDef = CType(tTrAct.GetObject(tLayoutBlDef.ObjectId, DatabaseServices.OpenMode.ForWrite, False, False), DatabaseServices.BlockTableRecord) Dim tCopyColl As DatabaseService ...
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
veydan am 09.06.2009 um 16:05 Uhr (0)
Hallo!Ich habe hier eine Lisp Funktion die ich in .NET realisieren will.Kann mir jemand sagen ob das möglich ist?Kurze Beschreibungen sind dabei.Die Funktion holt rahmen, sk vom Modell ins Layout.ssobjs = In anderer Funktion über Selectionset geholt (Rahmen und SK)NullP = einfügepunkt des rahmensScaleFaktor = SkalierungsfaktorProblem: Über dass skalieren der Objekte merkt er sich die Positionen des Schriftkopfes relativ zum rahmen.Suche ich mir den Rahmen und SK (merke mir hier die Position) einzeln und fü ...
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
alfred neswadba am 09.06.2009 um 18:03 Uhr (0)
Hi,kannst bitte Zeichnung beiliegen mita) Ursprungszustandb) Zielzustand...also mal händisch das ganze durchmachen, das steigert mein Vorstellungsvermögen (z.B. hast Du in Deinem Lisp nirgends angegeben, aus welches Layout er schalten soll, ... wird dann vielleicht klarer)Ein ganzes SelectionSet skalieren geht nicht, aber Du kannst Dir eine Skalierungs-Matrix anlegen und dann alle Elemente des SelectionSets mit dieser Matrix behandeln.- alfred -------------------www.hollaus.at
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
veydan am 10.06.2009 um 07:52 Uhr (0)
hallo!Anbei die 2 Zeichnungen.Also in der Form war es so, wenn Rahmen und SK im Layout waren, wurde davon ausgegangen, dass alle Layouts leer sind.Dann wurde einfach auf das erste Layout mittels tilemode umgeschaltet und die Objekte rüberkopiert.ich möchte es aber so intelligent machen, dass es auf das erste leere Layout kommt.mfgEDIT:Irgend etwas funktioniert da beim Upload nicht, die datei Ist ungültig wenn man sie downloadet...Kurz nochmal eine ErklärungA:Zeichnung + Rahmen + SK im ModellBZeichnung im M ...
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
alfred neswadba am 10.06.2009 um 08:35 Uhr (0)
Hi,... und Rahmen und Schriftkopf liegen waagrecht im Modellbereich?... und woher nimmt das Layout seine Seiteneinrichtung?- alfred -------------------www.hollaus.at
|
In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Lisp to .NET
veydan am 10.06.2009 um 08:38 Uhr (0)
ja liegen waagrecht im modell.die werden später von mir eingestellt funktion existiert bereits.Habe die Dateien bei einem Filehoster raufgeladen:vorher.dwg http://www.fileuploadx.de/957086 nachher.dwg http://www.fileuploadx.de/695151 mfg[Diese Nachricht wurde von veydan am 10. Jun. 2009 editiert.]
|
In das Form AutoCAD ARX Object wechseln |