Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  AutoCAD VBA
  3D Volumenkörper Winkel zwischen 2 Linien

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
Autor Thema:  3D Volumenkörper Winkel zwischen 2 Linien (1724 mal gelesen)
Dirk.B
Mitglied
Tischler / Leiter Arbeitsvorbereitung


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

Beiträge: 534
Registriert: 25.11.2003

AutoCAD 2021/2022
CAD+T
HP ZBook 15 G4, 64-bit,
WIN 10 Pro

erstellt am: 12. Sep. 2010 13: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


Bild_01.jpg

 
Hallo zusammen!

Ich habe hier einen Volumenkörper mit Schmiegen an den Kanten.
Nun möchte ich mittels 1 - 2 Klicks die Gradzahl zwischen den Linien ermitteln.

Sieht da jemand eine Möglichkeit?

Ich suche hier nach einem Lösungsansatz für ein evtl. kleines VBA - Tool.

Vielen Dank im voraus.


------------------
Gruß

Dirk

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


Ex-Mitglied

erstellt am: 12. Sep. 2010 13:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

Punkt 1 mit Objektfang _NEA holen
Punkt 2 mit Objektfang _PER holen
und geometrisch zwischen diesen beiden Punkten den Winkel ermitteln.

HIlft das? Wenn nicht, dann braucht es eine 'intensivere' Beschreibung der Fragestellung. 

- alfred -

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

Dirk.B
Mitglied
Tischler / Leiter Arbeitsvorbereitung


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

Beiträge: 534
Registriert: 25.11.2003

erstellt am: 12. Sep. 2010 20:24    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


Bild_02.jpg

 
Hallo Alfred!

Danke für die Info.
Irgendwie so stelle ich es mir vor.

Code:

Private Sub cmdOK_Click()
Dim Prompt1 As String
Dim Prompt2 As String
Dim FirstPt(2) As Double
Dim SecondPt(2) As Double
Dim VFirstPt As Variant
Dim VSecondPt As Variant

Dim OldOsnap As Variant

Dim MWinkel As Double
Dim WinkelXY As String

On Local Error Resume Next
Me.Hide

OldOsnap = ThisDrawing.GetVariable("osmode")

Prompt1 = "Bitte den 1. Punkt wählen"
Prompt2 = "Bitte den 2. Punkt wählen"

ThisDrawing.SetVariable "osmode", 512 'NEA
VFirstPt = ThisDrawing.Utility.GetPoint(, Prompt1)
FirstPt(0) = VFirstPt(0)
FirstPt(1) = VFirstPt(1)
FirstPt(2) = VFirstPt(2)
ThisDrawing.SetVariable "osmode", 8192 'PAR
VSecondPt = ThisDrawing.Utility.GetPoint(, Prompt2)
SecondPt(0) = VSecondPt(0)
SecondPt(1) = VSecondPt(1)
SecondPt(2) = VSecondPt(2)

MWinkel = ThisDrawing.Utility.AngleFromXAxis(FirstPt, SecondPt)
WinkelXY = ThisDrawing.Utility.AngleToString(MWinkel, acDegrees, ThisDrawing.GetVariable("Auprec"))

MsgBox WinkelXY, vbInformation

End Sub


Dann bekomme ich zwar einen Winkel, aber nicht den den ich wirklich benötige.

------------------
Gruß

Dirk

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


Ex-Mitglied

erstellt am: 12. Sep. 2010 20:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

mit .AngleFromXAxis kommst Du nicht weiter, das Verdrehen des BKS hat dabei keine Auswirkung. Du musst schon selbst (mathematisch) den Winkel ermitteln, zuvor die Ebene, für die Du den Winkel erhalten willst.

Leichter wird's natürlich, wenn Du davon ausgehst, dass die (in Deinem letzten Screenshot) obere Ebene horizontal ist und die Punkte aus der Vorderansicht senkrecht übereinander liegen, denn damit wird Deine Ebene schon ziemlich leicht definiert ==> in diesem Fall brauchst Du bei den Punkten nurmehr Z- mit Y-Wert tauschen (damit legst Du indirekt den Vektor auf die XY-Ebene) und fertig.

- alfred -

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

Dirk.B
Mitglied
Tischler / Leiter Arbeitsvorbereitung


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

Beiträge: 534
Registriert: 25.11.2003

erstellt am: 16. Sep. 2010 13:55    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 Alfred!
Hallo VBA - Gemeinde!

Wenn ich das über

Code:

ThisDrawing.SendCommand "_MEASUREGEOM" & vbCr & "A" & vbCr


mache, könnte man die Werte an Variablen übergeben?

Hier hätte ich ja alles was ich benötige.
- Abstand
- Stärke der Platte
- Winkel

-----------------------------------------------------------------
Befehl: _MEASUREGEOM
Option eingeben [Abstand/Radius/Winkel/Fläche/Volumen] <Abstand>: _distance
Ersten Punkt angeben: _mid von
Zweiten Punkt angeben oder [Mehrere Punkte]: _per nach
Abstand = 31.5029,  Winkel in XY-Ebene = 180.00,  Winkel von XY-Ebene = 40.60
Delta X = -23.9204,  Delta Y = 0.0000,  Delta Z = 20.5000
-----------------------------------------------------------------

------------------
Gruß

Dirk

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


Ex-Mitglied

erstellt am: 16. Sep. 2010 14:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

ich weiss zwar jetzt nicht, von welchem Winkel Du jetzt sprichst, der Dir hier angezeigt wird (ich wäre der Meinung gewesen, es handle sich um einen Körper, der halt irgendwie abgeschrägt wurde, MEASUREGEOM zeigt Dir sicher nicht 4 Winkel an, wenn beispielsweise 4 Seiten mit unterschiedlichen Winkeln behandelt wurden).

Aber auch wenn's der ist, keine (mit bekannte) AutoCAD-VBA-Funktion ermöglicht es Dir, direkt aus der Befehlszeile etwas auszulesen.

Abhilfe: Protokoll einschalten, dann Befehl starten, Protokoll ausschalten und die Protokolldatei dann mit VBA einlesen.

- alfred -

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

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)2023 CAD.de | Impressum | Datenschutz