Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  API Blöcke in Zeichnungsansichten einfügen

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 SOLIDWORKS
  
AMB
Autor Thema:  API Blöcke in Zeichnungsansichten einfügen (3446 mal gelesen)
nahe
Ehrenmitglied



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

Beiträge: 1747
Registriert: 18.01.2001

arbeite mit:
Dell Precision 7750
i7 2,6 GHz 6 Kerne
32GB RAM
512GB SSD
NVIDIA Quadro RTX 4000
------------------------
SWX-2020 SP5.0
EPDM
----------------
Windows 10
----------------
VB.net
VB
VBA
ein wenig Swift am Mac

erstellt am: 22. Okt. 2012 08:33    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 zusammen

ich steh im Moment etwa auf der Leitung

folgende Aufgabenstellung:
ich möchte per API, in einer Zeichnung, in der Nähe der Maße, Blöcke einfügen.

folgendes hab ich bis jetzt versucht:

1.) Versuch
alle Displaydimension Objekte durchlaufen
das Annotation Objekt ausgelesen
den Einfügepunkt ermittelt
und dann die Blöcke eingefügt

funktioniert wunderbar NUR
die Blöcke hängen nicht an der Ansicht
wenn ich die Ansicht verschiebe, werden die Blöcke nicht mit verschoben

2.) Versuch
alle Displaydimension Objekte durchlaufen
das Annotation Objekt ausgelesen
den Einfügepunkt ermittelt
die dazugehörige Ansicht ermittelt
den Maßstabsfaktor der Ansicht ausgelesen
die Position der Ansicht ausgelesen
die Ansicht zur aktiven Ansicht gemacht
und dann die Blöcke an Hand der Position und des Maßstabsfaktors eingefügt

funktioniert wunderbar
die Blöcke hängen an der Ansicht und werden auh schön mit verschoben
NUR
wenn die Ansicht mit "Ansicht drehen" gedreht wurde werden die Blöcke eben um diesen Wert verdreht eingefügt.

ich hab mal versucht mit
"ModelToViewTransform" und "Inverse"
den passenden Einfügepunkt zu ermitteln bin aber bis jetzt gescheitert.

Hat irgendwer ev. eine Idee für das Problem?

PS
ich hab keine andere Möglichkeit gefunden den Einfügepunkt der Bemaßung zu ermitteln, als über das Annotation Objekt.
Gibt es ev. eine andere Möglichkeit?

------------------
Grüße
Heinz

[Diese Nachricht wurde von nahe am 22. Okt. 2012 editiert.]

[Diese Nachricht wurde von nahe am 22. Okt. 2012 editiert.]

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

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



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

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 22. Okt. 2012 10:31    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 Nur für nahe 10 Unities + Antwort hilfreich

Hallo Heinz,

keine Erfahrung meinerseits dazu, aber wenn ich das richtig verstanden habe läuft Variante 2 doch schon so gut, nur bei gedrehten Ansichten wird der Block entsprechend auch gedreht und du willst den aber "normal" lesen können. Dazu müsstest du ihn doch beim Einfügen "nur" um den passenden Gegenbetrag zur View zurückdrehen.

Den Rotationswinkel einer Zeichenansicht müsstest du mit View::Angle bekommen, die View hast du doch schon. Und beim SketchManager::InsertSketchBlockInstance gibt es als letzten Paramter auch einen Winkel, wenn du da einfach den negativen Wert eingibst zur Ansichtsdrehung sollte der Block wieder gerade stehen.

Aber vielleicht hab ich dein Problem auch trotz der sehr guten Beschreibung nicht verstanden ...

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de

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

nahe
Ehrenmitglied



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

Beiträge: 1747
Registriert: 18.01.2001

arbeite mit:
Dell Precision 7750
i7 2,6 GHz 6 Kerne
32GB RAM
512GB SSD
NVIDIA Quadro RTX 4000
------------------------
SWX-2020 SP5.0
EPDM
----------------
Windows 10
----------------
VB.net
VB
VBA
ein wenig Swift am Mac

erstellt am: 22. Okt. 2012 13:19    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

hat es was mit der Web-Seite?
In der Listenansicht sehe ich, eine Antwort, aber leider kann ich keine finden.

------------------
Grüße
Heinz

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

Christian_W
Ehrenmitglied V.I.P. h.c.
Konstrukteur (Dipl-Ing)


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

Beiträge: 3189
Registriert: 04.04.2001

CSWP 12/2015<P>SWX2021sp5 Win10/11
(SWX2016, SWX2012)
proAlpha6.2e00/calinkV9
(Tactonworks)
(Medusa7, NesCAD2010,
solidEdge19)

erstellt am: 22. Okt. 2012 13:27    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 Nur für nahe 10 Unities + Antwort hilfreich

Hallo,

verhält es sich manuell nicht so ähnlich und
der Winkel muss dann nachträglich wieder auf 0 gesetzt werden?

Gruß, Christian

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

nahe
Ehrenmitglied



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

Beiträge: 1747
Registriert: 18.01.2001

arbeite mit:
Dell Precision 7750
i7 2,6 GHz 6 Kerne
32GB RAM
512GB SSD
NVIDIA Quadro RTX 4000
------------------------
SWX-2020 SP5.0
EPDM
----------------
Windows 10
----------------
VB.net
VB
VBA
ein wenig Swift am Mac

erstellt am: 22. Okt. 2012 13:32    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


PIC-001.JPG

 
Hallo Stefan

es geht nicht um die Drehrichtung des Blocks die hab ich wie von Dir geschrieben über den Winkel der Ansichtsverdrehung "im Griff".
Es geht darum, dass der Einfügepunkt des Blocks, um den Winkel der Ansichtdrehung versetzt(verdreht) eingefügt wird (siehe Bild)

------------------
Grüße
Heinz

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

nahe
Ehrenmitglied



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

Beiträge: 1747
Registriert: 18.01.2001

arbeite mit:
Dell Precision 7750
i7 2,6 GHz 6 Kerne
32GB RAM
512GB SSD
NVIDIA Quadro RTX 4000
------------------------
SWX-2020 SP5.0
EPDM
----------------
Windows 10
----------------
VB.net
VB
VBA
ein wenig Swift am Mac

erstellt am: 22. Okt. 2012 14:16    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


PIC-001.JPG

 
Hallo

ich hab keine Ahung was zur Zeit mit der Seite los ist.
Poste jetzt die Antwort zum 2. Mal

Stefan, es hat nichts mit der Drehung des Blocks zu tun sondern mit
dem Einfügepunkt des Blocks (siehe Bild)

------------------
Grüße
Heinz

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

nahe
Ehrenmitglied



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

Beiträge: 1747
Registriert: 18.01.2001

arbeite mit:
Dell Precision 7750
i7 2,6 GHz 6 Kerne
32GB RAM
512GB SSD
NVIDIA Quadro RTX 4000
------------------------
SWX-2020 SP5.0
EPDM
----------------
Windows 10
----------------
VB.net
VB
VBA
ein wenig Swift am Mac

erstellt am: 24. Okt. 2012 08:49    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

hat noch niemand mit diesem Problem zu tun gehabt?

------------------
Grüße
Heinz

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

bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



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

Beiträge: 2776
Registriert: 18.07.2012

-Solid Works 2019 SP5
-Pro Engineer WF 3

erstellt am: 24. Okt. 2012 09:53    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 Nur für nahe 10 Unities + Antwort hilfreich

Hallo Heinz,

hatte das Problem beim erzeugen eines Ausbruches das ich die Masse der Skizze nicht auf die rotierte Ansicht beziehen durfte sondern auf die noch nicht gedrehte beziehen mußte, sprich SWX hat erst beim erzeugen des Ausbruches die Skizze gedreht.

Ich weiß jetzt nicht ob mann feststellen kann ob und um welchen Winkel eine Ansicht gedreht wurde aber wenn ja könntest du ja dies Abfragen und entsprechend reagieren z.B. den Wert für die X und Y Koordinate des Einfügepunktes tauschen wenn Drehwinkel -90° oder ähnlich.

Kann natürlich nicht sagen ob das der richtige weg ist, ist halt nur eine Idee von mir

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

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

nahe
Ehrenmitglied



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

Beiträge: 1747
Registriert: 18.01.2001

arbeite mit:
Dell Precision 7750
i7 2,6 GHz 6 Kerne
32GB RAM
512GB SSD
NVIDIA Quadro RTX 4000
------------------------
SWX-2020 SP5.0
EPDM
----------------
Windows 10
----------------
VB.net
VB
VBA
ein wenig Swift am Mac

erstellt am: 24. Okt. 2012 10:20    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 Bernd

danke mal für den Hinweis.
Ich geh mal davon aus, dass es nicht so einfach sein wird, weil
wenn ich mich schon mit herumschlage, möchte ich es gleich ordentlich machen und auch verstehen
D.h. wenn ich es richtig verstehe geht das mit dem x/y tauschen ja nur wenn die Ansicht
um 90° gedreht ist. Was ist aber wenn die Ansicht um einen anderen Winkel verdreht ist z.B. 22°?

PS
ja man kann feststellen um welchen Winkel die Ansicht gedreht wurde.
werd mal versuchen im WWW fündig zu werden.

den Punkt um den Winkel verdreht zu berechnen hab ich schon versucht,
nur hab ich scheinbar etwas Problem wenn die Koordinaten die Vorzeichen wechseln.
1x ist meine Berechnung ok und 1 x nicht

anbei meine Überlegung für die Drehung

p2 = Punkt der gedreht werden soll
wi = Winkel um den die Ansicht verdreht ist

Function rotate_point(p2 As Variant, wi As Double) As Variant
  Dim temp(2) As Double
  Dim r As Double
  Dim w As Double
  Dim ww As Double
 
  x = p2(0)
  y = p2(1)

  'berechne den Radius
  r = Sqr(x * x + y * y)
 
  'berechne den Winkel des aktuellen Punktes
  w = Atn(y / x)
 
  'addiere den Umkehrwert des Winkel der Ansicht zum Winkel des Punktes
  ww = w + wi * -1

  'berechne die Koordinaten des Punktes neu
  x = Cos(ww) * r
  y = Sin(ww) * r
 
  temp(0) = x
  temp(1) = y
  temp(2) = 0
 
  rotate_point = temp
End Function

------------------
Grüße
Heinz

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

bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



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

Beiträge: 2776
Registriert: 18.07.2012

-Solid Works 2019 SP5
-Pro Engineer WF 3

erstellt am: 24. Okt. 2012 12:09    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 Nur für nahe 10 Unities + Antwort hilfreich

Hallo Heinz,

mir fällt gerade auf dass das Tauschen der X und Y Koordinaten bei mir nur Glück war weil es eine zentrische Rechteckskizze war  .

Aber mit deiner Transformierung sollte es eigentlich gehen, mich wundert nur das ww = w + wi * -1 zur Bestimmung des neuen Winkels, sollte nicht eigentlich ww = w + wi stimmen.

Leider habe ich natürlich nichts womit ich das ganze testen könnte.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

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

nahe
Ehrenmitglied



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

Beiträge: 1747
Registriert: 18.01.2001

arbeite mit:
Dell Precision 7750
i7 2,6 GHz 6 Kerne
32GB RAM
512GB SSD
NVIDIA Quadro RTX 4000
------------------------
SWX-2020 SP5.0
EPDM
----------------
Windows 10
----------------
VB.net
VB
VBA
ein wenig Swift am Mac

erstellt am: 24. Okt. 2012 15:10    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 Bernd

mein Ansatz dazu ist,
wenn die Ansicht um 90° gedreht ist muss ich -90° drehen um den richtigen Winkel zu bekommen

------------------
Grüße
Heinz

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



Wissenschaftler:in im Projekt EndoSMART skalierbare Aktorplattform für Lightweight Robotics und Endoskopie

Das Leibniz?Institut für Polymerforschung Dresden e. V. (IPF) erarbeitet materialwissenschaftliche Innovationen für die Gebiete Ressourcensicherung, Gesundheit und Information. In fünf wissenschaftlichen Instituten, Verwaltung und Technischen Diensten beschäftigt das IPF ca. 500 Personen. Neue Themen und Methoden werden zunehmend in flexiblen Forschungsstrukturen wie unabhängigen Nachwuchsgruppen erkundet....

Anzeige ansehenProzessmanagement
bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



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

Beiträge: 2776
Registriert: 18.07.2012

-Solid Works 2019 SP5
-Pro Engineer WF 3

erstellt am: 24. Okt. 2012 16:37    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 Nur für nahe 10 Unities + Antwort hilfreich

Jetzt hab ich es glaube gecheckt, du hast die Koordinaten von der berits gedrehten Ansicht aber brauchst ja die der theoretisch noch nicht gedrehten Ansicht daher abziehen sprich Rückwärts rechnen  .

Aber da ich von VBA nicht viel Ahnung habe, lasse ich dich mal in Ruhe machen, sollte von mir auch nur ein Denkanstoss sein in welche Richtung dein Problem liegen könnte, könnte natürlich auch der Holzweg sein  .

Gruß und gutes Gelingen
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

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