|
Autocad VBA : Grundsätzliche Entscheidung: VBA oder LISP?
Stelli1 am 28.02.2006 um 15:03 Uhr (0)
Hallo Ontario,wieso entweder oder ? Zwischen weiss und schwarz gibt es noch eine Menge dazwischen und drum herum.Die Vorteile von VBA sind meines Erachtens- durchgängige Sprache von Office über AutoCAD bis VB- dadurch leichte Portierbarkeit- leichte Maskengestaltung- leichter Zugriff auf DB mit ADO- Zugriff auf Win ApiNachteile liegen wohl hier- nicht 100% Ein- und Anbindung an AutoCAD (einige Funktion sind schlecht)- schwierigere Einbindung in AutoCAD (in Kombi mit Lisp gut)Ich würde den Schwerpunkt wiede ...
|
In das Form Autocad VBA wechseln |
|
Autocad VBA : Grundsätzliche Entscheidung: VBA oder LISP?
Stelli1 am 28.02.2006 um 16:34 Uhr (0)
Hallo Ontario,na dann, herzlich willkommen in der VBA Gemeinde.Stelli------------------Warum lispeln wenns auch anders geht. www.ib-stelberg.de
|
In das Form Autocad VBA wechseln |
|
Autocad VBA : winkel durch dynamischen schnittpunkt
shodan am 03.04.2006 um 21:04 Uhr (0)
danke für die rasche antwort.das problem an der sache liegt leider daran, dass durchaus 2 linen am angegebenen punkt liegen können. ich hab mich daher für eine "linienunabhängige" variante entschieden und lasse mit objektfang nächster einen punkt auf der linie wählen (da es nur text ist, ist die 100%ige ausrichtung nicht sooo tragisch). das funktioniert jetzt schon sehr schön.zwei fragen hat der blutige anfänger noch:- gibt es eine möglichkeit ähnlich lisp die geschriebene funktion auch direkt über einen c ...
|
In das Form Autocad VBA wechseln |
|
Autocad VBA : winkel durch dynamischen schnittpunkt
Stelli1 am 03.04.2006 um 21:38 Uhr (0)
Hallo,du kannst in deine Startlisp folgende Lisp einbindenCode:(defun c:MeinBefehl (/) (vla-runmacro(vlax-get-acad-object) "MeinMacro"))Damit kannst du dann das Makro "MeinMacro" auf der Befehlszeile mit "MeinBefehl" aufrufen. Den Befehl kannt du auch alternativ per VBA und Sendcommand ausführen.Variablen lokale und globale kannst du in VBA nach belieben einrichten. Wird eine Variable innerhalb eine Prozedur (Sub/Function) mit Dim Variable deklariert gilt sie nur in der Prozedur. Wird sie in einen Klassenm ...
|
In das Form Autocad VBA wechseln |
|
Autocad VBA : CHM-Hilfe Datei über LISP aus VBA
Stelli1 am 01.12.2006 um 09:41 Uhr (0)
Hallo Jörn,da gibt es (wie oft) eine API.So geht es zum Beispiel:Code: ModulOption ExplicitPublic Declare Function HtmlHelpLongArg Lib "hhctrl.ocx" Alias "HtmlHelpA" (ByVal hwndCaller As Long, ByVal pszFile As String, ByVal uCommand As Long, ByVal dwData As Long) As Long FormPrivate Sub CommandButton1_Click() WindowHandle , Helpfile ,Command,HelpIndex HtmlHelpLongArg Application.VBE.mainwindow.HWND, "C:Appl opobaseHelp bedbs.chm", &HF, 4 Letzter Parameter ist ContextID im H ...
|
In das Form Autocad VBA wechseln |
|
Autocad VBA : CHM-Hilfe Datei über LISP aus VBA
Stelli1 am 01.12.2006 um 12:53 Uhr (0)
Hallo Jörn, Zitat:Code: ModulOption ExplicitPublic Declare Function HtmlHelpLongArg Lib "hhctrl.ocx" Alias "HtmlHelpA" (ByVal hwndCaller As Long, ByVal pszFile As String, ByVal uCommand As Long, ByVal dwData As Long) As Long FormPrivate Sub CommandButton1_Click() WindowHandle , Helpfile ,Command,HelpIndex HtmlHelpLongArg Application.VBE.mainwindow.HWND, "C:Appl opobaseHelp bedbs.chm", &HF, 4 Letzter Parameter ist ContextID im HelpFileEnd SubDie Public Declare Function HtmlHel ...
|
In das Form Autocad VBA wechseln |
|
Autocad VBA : CHM-Hilfe Datei über LISP aus VBA
Stelli1 am 01.12.2006 um 15:30 Uhr (0)
Hallo Jörn,kanns die nicht genau sagen. Such mal in Google nach dem API Namenz.B hierHast du deine Helpdatei mit dem HTML Compiler von Mircosoft gemacht ?Da ist es teilweise nicht so durchsichtig wie man die Indexe auch wirklich generieren kann. Die Indexe müssen in einer Mapping Datei stehen.Stelli------------------Warum lispeln wenns auch anders geht. www.ib-stelberg.de
|
In das Form Autocad VBA wechseln |
|
Autocad VBA : Elemente an befehlszeile übergeben
Stelli1 am 21.03.2007 um 20:56 Uhr (0)
Hallo Ralph,mir fehlts am passenden Lisp. Code:Dim sset As AcadSelectionSetDim ent As AcadEntitySet sset = ThisDrawing.SelectionSets("MS")sset.Clearsset.Select acSelectionSetAllFor Each ent In sset Per Lisp ein Objekt per handle zum Selektionset hinzufügen Debug.Print ent.Handle ThisDrawing.SendCommand "lispeln"Next ent Befehl mit Auswahl aus dem Selectionset SSThisDrawing.SendCommand "_move !ss " & vbCrLfVielleicht hat ja noch jemand den passenden Lisp Ausdruck Stelli------------------Warum lispeln w ...
|
In das Form Autocad VBA wechseln |
|
Autocad VBA : Elemente an befehlszeile übergeben
Stelli1 am 23.03.2007 um 10:09 Uhr (0)
Hallo Ralph,der Code war ja auch nicht fertig. Ich dachte jemand hätte noch eine Idee für die fehlende Zeile.Auf jeden Fall hat das VBA Selektionset nichts mit dem in AutoCAD zu tun. Nachfolgend aber noch eine andere Möglichkeit.Code:Sub test() Zum Testen einige Linien ud einige Kreise zeichnen Dim FilterType(0) As Integer Dim FilterData(0) As Variant Dim sset As AcadSelectionSet Set sset = ThisDrawing.ActiveSelectionSet Alle Linien wählen FilterType(0) = 0 FilterData( ...
|
In das Form Autocad VBA wechseln |
|
AutoCAD VBA : Stützpunkte in Polylinien hinzufügen
Iowa am 15.06.2007 um 10:18 Uhr (0)
Hallo!Ich möchte mir gerne einen Button erstellen, der auf Knopfdruck die Funktion aktiviert einen Stützpunkt zu einer Polylinie hinzufügen zu können. Es gab da wohl mal ein lisp-tool, leider existiert der Link nicht mehr. Das Programm hieß: PLVERT.lspVielleicht kann mir das ja jemand schicken / posten? Ansonsten wäre ich auch dankbar, wenn mir jemand zeigen könnte, wie ich den einfachen Befehlszug "pedit -- BEarbeiten -- Einfügen" in einem Makro oder einem lsp-tool umsetzen kann.Vielen Dank!Grüße Iowa
|
In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Stützpunkte in Polylinien hinzufügen
Iowa am 15.06.2007 um 10:37 Uhr (0)
Das habe ich mit dem lisp "knicken" schon probiert ... aber irgendwie scheint das nicht mit 2d-polylinien zu funktionieren.wie muss ich denn dieses AddVertex einbinden?Grüße Iowa
|
In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : AutoCAD VB muss auf Access warten
JOLI am 01.10.2007 um 08:18 Uhr (0)
Hallo leider schein ich mich etwas Dumm ausgedrückt zu haben.Nochmal ein Versuch:ich starte einen Befehl um in meine Minizeichnungsverwaltung eine neue Zeichnung zu ladenDer Befehl geht in AUtoCAD VBA und Startet Access dort geht eine Maske auf. Ab diesem Moment übernimmt Access VBA die Kontrolle und AutoCAD arbeitet weiter.Der Anwender kann nun in AutoCAD und ACCESS machen was er will. An dieser Stelle möchte ich eigendlich, dass der Anwender in Access eine Zeichnung wählt und diese dann an in AutoCAD öf ...
|
In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : ausgewählte Elemente in der Zeichnung per Macros abfragen
Stelli1 am 03.10.2007 um 13:47 Uhr (0)
Hallo Thom,schau dir doch mal diesen Beitrag an.Hier gibt es auch noch eine Info.Der Trick ist eigentlich das im Buttonmacro ein zuvor mit lisp definierter Befehl aufgerufen wird. Das hat auch noch den Vorteil, dass die Befehlswiederholung klappt.Wilfried Stelberg------------------Warum lispeln wenns auch anders geht. www.ib-stelberg.de
|
In das Form AutoCAD VBA wechseln |