Automatyczne rysowanie

Witam, szukam "automatycznego" rysunku moich części, robię predefiniowane rysunki (kiedy wstawiam swoją część, widoki same się umieszczają), ale nie mogę przełączyć deski wiertniczej w tryb automatyczny. Jak to zrobić? A jeśli nie jest to możliwe, czy można to zrobić za pomocą makra?

Próbowałem również zrobić to za pomocą  SmartDrawings z myCADtools, ale to to samo, nie ma tabeli.


testplan.jpg

Witam

Tak, jest to możliwe poprzez wstawienie stołu wiertniczego,...

Pokażę ci później, ponieważ mój komputer jest przetwarzany.

Pozdrowienia.

@+.

AR.

Czy jest to możliwe do zrobienia na predefiniowanym rysunku? bo trzeba dać początek i twarz, ale ponieważ nie ma żadnych elementów, nie mogę tego zrobić.

Okej, dziękuję, czekam na Twoją opinię. 

Witam ponownie,

Oto moje wyjaśnienie tabeli, która ma być wstawiona do rysunku.

Pozdrowienia.

AR.


2020-09-01_135558.jpg
1 polubienie

Dziękuję za odpowiedź, ale to nie jest to, czego szukam, trudno mi się wyrazić. Wiem, jak wstawić stół wiertarski, ale chciałbym, aby został on automatycznie wstawiony do typowego rysunku.

kiedy jestem na mojej części 3D, mam rysunek utworzony z części, wybieram typ planu, a kiedy sprawdzam, bezpośrednio umieszcza mnie widok ISO , widok z góry, widoki pomocnicze itp.  (Obecnie to jest to, co mam.)

ale w tym modelu planu TYPE chciałbym również zintegrować stół do wiercenia, który przychodzi do bezpośredniego umieszczenia go bez konieczności robienia czegokolwiek, gdy później wykonuję rysunek.

Witam.

Jest to możliwe za pomocą makra z funkcją InsertHoleTable2

Zobacz przykłady podane na tej stronie

1 polubienie

 dziękuję JeromeP Właśnie spojrzałem, to jest to, czego potrzebuję.

Czy masz rozwiązanie, aby nie musieć podawać współrzędnych X i Y do wyboru wierzchu monety, a także awersu? Ponieważ w zależności od części, która ma zostać wstawiona, współrzędne nie będą takie same, a więc to nie działa.

boolstatus = Part.Extension.SelectByID2("", "WIERZCHOŁEK", 0.0443, 0.0674, 0, Prawda, 1, Nic, 0)

boolstatus = Part.Extension.SelectByID2("", "TWARZ", 0.067, 0.083, 0, Prawda, 2, Nic, 0)

Musiałby automatycznie wykryć wierzchołek monety, a także awers automatycznie wstawionej monety, ale nie widzę, jak to zrobić.

Użyty kod podstawowy.

Dim swApp As SldWorks.SldWorks
Dim Part As SldWorks.ModelDoc2
Dim spec As SldWorks.DocumentSpecification
Dim Drawing As SldWorks.DrawingDoc
Dim boolstatus As Boolean
Option Explicit
Sub main()
    Set swApp = Application.SldWorks
    Set spec = swApp.GetOpenDocSpec("C:\Program Files\SolidWorks Corp\SOLIDWORKS\samples\tutorial\api\cover_datum.sldprt")
    Set Part = swApp.OpenDoc7(spec)
    Set Drawing = swApp.NewDocument("C:\Program Files\SOLIDWORKS Corp\SOLIDWORKS\samples\tutorial\advdrawings\Drawing.drwdot", 2, 0.2794, 0.4318)
    Set Part = Drawing
    boolstatus = Part.Extension.SelectByID2("Sheet1", "SHEET", 0.39237, 0.5218942019544, 0, False, 0, Nothing, 0)
    boolstatus = Part.Create3rdAngleViews2("C:\Program Files\SolidWorks Corp\SOLIDWORKS\samples\tutorial\api\cover_datum.sldprt")
    Part.ClearSelection2 True
    boolstatus = Part.ActivateView("Drawing View1")
    'Select a vertex in the drawing view to be the origin of all datums in the table
    'All XLOC and YLOC table column values will be relative to this datum origin
    boolstatus = Part.Extension.SelectByID2("", "VERTEX", 0.117324728174898, 0.108554228680764, -500.0075, True, 1, Nothing, 0)
    'Select a face that contains the holes that will be annotated in the table
    boolstatus = Part.Extension.SelectByID2("", "FACE", 0.090728339186173, 0.119052803281577, -500.0075, True, 2, Nothing, 0)
    Dim myView As Object
    Set myView = Part.SelectionManager.GetSelectedObjectsDrawingView2(1, -1)
    Dim myHoleTable As Object
    'Insert a hole table
    'anchored with its top left corner at x-coordinate = 0.07m and y-coordinate = 0.175m,
    'with starting datum tag "A",
    'using hole table template: standard hole table--letters.sldholtbt
    Set myHoleTable = myView.InsertHoleTable2(False, 0.153019881817662, -3.77259107537343E-02, 1, "A", "C:\Program Files\SolidWorks Corp\SOLIDWORKS\lang\english\standard hole table--letters.sldholtbt")
    Part.ClearSelection2 True
    boolstatus = Part.ActivateSheet("Sheet1")
End Sub