Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  Sendcommand + MS Form

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
  
NVIDIA GTC Paris und ISC High Performance-Konferenz 2025, eine Pressemitteilung
Autor Thema:  Sendcommand + MS Form (1240 mal gelesen)
Christian Blei
Mitglied



Sehen Sie sich das Profil von Christian Blei an!   Senden Sie eine Private Message an Christian Blei  Schreiben Sie einen Gästebucheintrag für Christian Blei

Beiträge: 124
Registriert: 23.06.2008

Thinkpad T60p, 4GB
XP,Autocad 2010, ProStructures V8i 2, VBA, VB.NET,

erstellt am: 27. Jul. 2009 20:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo!

Ich bräuchte Hilfe beim Erstellen eines lofted solids.
Mit Hilfe bin ich soweit, das ich über sendcommand den loft Befehl aufrufe und dann aus einem Selectionset die Namen der Querschnitte nacheinander in die Kommandozeile einlese.

Dann kommt in diesem Befehl allerdings eine MS Form für das Feintuning. Gibt es in vba oder lisp eine Möglichkeit die Einstellungen in dieser MS Form zu machen und sie dann mit einem ok zu schliessen? oder bleibt mir nur der Mausklick?
( ich beginne gerade mit .net, und so wie ich verstehe, wäre es in .net möglich ein lofted solid mit den notwendigen Einstellungen zu programmieren)

(Vielen Dank jetzt schon an a.n.....)

Christian Blei
   


Sub test_Sendcommand()


Dim I As Long


Dim Ent As AcadEntity
Dim acSS As AcadSelectionSet
Dim Pline As AcadLWPolyline
Dim EntArray() As AcadEntity


Err.Clear
On Error Resume Next
Set acSS = ThisDrawing.SelectionSets.Item("LoftSS")
If Err.Number <> 0 Then
Set acSS = ThisDrawing.SelectionSets.Add("LoftSS")
End If
acSS.Clear
For I = 0 To 1
ThisDrawing.Utility.GetEntity Pline, Point, "First"
ReDim EntArray(0)
Set EntArray(0) = Pline
acSS.AddItems (EntArray)
Debug.Print Pline.Handle + CStr(acSS.Count)
Next I


ThisDrawing.SendCommand ("_.loft ")

For I = 0 To acSS.Count - 1
Set Ent = acSS.Item(I)
Debug.Print Ent.Handle
ThisDrawing.SendCommand ("(handent " & Chr(34) & Ent.Handle & Chr(34) & ") ")
Next I
ThisDrawing.SendCommand (vbCr + "Cross sections only" + vbCr)


''''''''''''''''''''''''''''''''''''''''''''''''''
' Dialog box ?????????????????????????????????????
''''''''''''''''''''''''''''''''''''''''''''''''''

Debug.Print ThisDrawing.SelectionSets.Count
Set Entity = ThisDrawing.ModelSpace.Item(ThisDrawing.ModelSpace.Count - 1)
Entity.color = 1

End Sub

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP


Ex-Mitglied

erstellt am: 27. Jul. 2009 20:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

herzlich willkommen bei CAD-de! 

Zitat:
Dann kommt in diesem Befehl allerdings eine MS Form für das Feintuning. Gibt es in vba oder lisp eine Möglichkeit die Einstellungen in dieser MS Form zu machen und sie dann mit einem ok zu schliessen? oder bleibt mir nur der Mausklick?
...auf die Schnelle? ==> bleibt Dir nur der Mausklick. Solange Du in VBA bist, hast Du kein Multithreading, damit steht Dein Code bis der Dialog vom Anwender bestätigt wird.
Hättest Du eine Möglichkeit für Multithreading, dann könntest Du vorher einen parallelen Prozess starten, der mit SendKey (oder ähnlichem) Dir den Dialog bedient und auch das OK auslöst. Aber das ist heftig, mag sein, dass Deine Aufgabe es notwendig macht, diese kenn ich eben nicht.

Zitat:
ich beginne gerade mit .net, und so wie ich verstehe, wäre es in .net möglich ein lofted solid mit den notwendigen Einstellungen zu programmieren
...BRep-Library ist auch nicht gerade der ideale Einstieg für dotNET (oder C++ oder was auch immer), da ist die Lib selbst schon zu geheimnisvoll (in bezug auf fehlende Doc's). Probier bitte mal an einfacheren Beispielen!

Zitat:
Vielen Dank jetzt schon an a.n.....
...na da musste ich doch gleich ran    ... aber hier gibt's mehr Profis, muß nicht ich sein!

- alfred -

------------------
www.hollaus.at



Anzeige:Infos zum Werbeplatz >>

pitCAD Ultimate Heizung - Kälte - Sanitär - Laborbau - Netzwerk CAD APP für TGA, Elektro, Facility Management

Vereint die langjährige Erfahrung von pit-cup im Bereich der Gebäudetechnikplanung und des Facility Management zu einem durchgängigen 2D/3D CAD/BIM Planungswerkzeug, über den gesamten Lebenszyklus einer Immobilie.

Christian Blei
Mitglied



Sehen Sie sich das Profil von Christian Blei an!   Senden Sie eine Private Message an Christian Blei  Schreiben Sie einen Gästebucheintrag für Christian Blei

Beiträge: 124
Registriert: 23.06.2008

Thinkpad T60p, 4GB
XP,Autocad 2010, ProStructures V8i 2, VBA, VB.NET,

erstellt am: 28. Jul. 2009 07:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi Alfred,

Danke für das herzliche Willkommen!

Wenn ich in VBA keine Chance habe ist das zwar schade, aber kein Drama. Das heisst nur, dass mein Code nicht durchläuft sondern der User mit dem Finger auf der Enter Taste dasitzen muss. Und natürlich Einstellungenn verändern kann.......... Deswegen wäre es mir schon lieber, ich könnte die Form steuern.

Mit . net bin ich in den Anfängen. Und übe erst einmal mit sehr einfachen Sachen. Aber ich versuche schon ein Gefühl zu bekommen, was im Vergleich mit VBA Alles geht. Da ich kein Lispler bin, gehen mir die Sendcommands auch nicht immer leicht von der Hand. Auch deswegen, und natürlich wegen 64 bit, .net.

Grüsse
Christian Blei

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz