• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Leggi altro.

Macro interessanti per SolidWorks

cmo73

Utente poco attivo
Professione: ingegnere
Software: sw 2014
Regione: svizzera
#61
salve, dopo la presentazione, ecco il moi problema....

lo scopo sarebbe quello di selezionare delle viti tipo "brugola" (in drawing view) e mostrare unicamente l'incasso...


good morning

sorry for my english ....

I have a problem with a macro,

when I select the features manually, and I ask to show the hidden edges, it works ... (Drawing file with parts or assemblies)

but with a macro, with <<selectByID2>> function, the features are properly selected, I think ...
then, with the command, << swApp.RunCommand swCommands_Popup_Show_Hidden, "blah blah" >>,


in assemblies drawing view, it does not work correctly, all the hidden edges are shown ...

in parts drw, it's ok.


Why???


can you help me?

thank you a lot

greetings
CMo


attached: a picture of the problem, parts, assembly and drawing, and the macro...

img.jpg

Dim swApp As SldWorks.SldWorks
Dim Part As SldWorks.ModelDoc2
Dim myModelView As SldWorks.View
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Sub main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc

boolstatus = Part.Extension.SelectByID2("Cut-Extrude2@Part1-2@Drawing View2", "BODYFEATURE", 0, 0, 0, False, 0, Nothing, 0)

boolstatus = Part.Extension.SelectByID2("Cut-Extrude2@Assem1-2@Drawing View3/Part1-1@Assem1", "BODYFEATURE", 0, 0, 0, True, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("Cut-Extrude2@Assem1-2@Drawing View4/Part1-1@Assem1", "BODYFEATURE", 0, 0, 0, True, 0, Nothing, 0)
swApp.RunCommand swCommands_Popup_Show_Hidden, ""
Part.ClearSelection2 True
End Sub


a sinistra i tratti dell'asta della vite, non sono visibili, ed è quello che desidero....
OKO.jpg
 

Allegati

meccanicamg

Utente Senior
Professione: ♔ Technical manager - Mechanical engineer ♚
Software: SolidWorks, DraftSight, Me10, Freecad, KissSoft, Excel
Regione: Lombardia
#62
Scusa ma non basta mostrare le viste solo a spigoli visibili senza fare cose strane?
 

Pitaro

Utente poco attivo
Professione: progettista/disegnatore
Software: Vari
Regione: Trentino
#63
Salve a tutti, vorrei imparare a fare delle macro, un pò per lavoro e un pò per gusto personale.

Dove posso trovare una guida che mi spieghi cosa restituiscono i vari oggetti/metodi/funzioni?

Grazie
 

jenuary

Utente Standard
Professione: Progettista e Programmatore VB.Net
Software: Solidworks
Regione: Veneto
#64
Ciao Pitaro,
una guida su come cominciare la potresti acquistare dal tuo rivenditore SolidWorks, la stessa SolidWorks ha una libro che si chiama Api Foundamentals che costa circa 70 euro.
Il libro è in inglese ovviamente e richiede una conoscenza di programmazione, come per tutti i testi che ti propongo a seguire.
Un altro libro potrebbe essere
Automating SOLIDWORKS 2015 Using Macros che trovi anche su Amazon, scritto da Mike Spens, io possiedo la versione 2013, sempre in inglese, e costa circa 70 Euro.
Altro libro interessante in due volumi è
SolidWorks API Series 1 o 2 : Programming & Automation
che trovi sempre anche in Amzon, anche in versione kindle.

Cosa importante è che questi libri sono basati su una programmazione in Vba e quindi crei macro, se invece vuoi creare programmi (exe), dovresti utilizzare Visual Basic 2010 (consiglio) o 2013, ma qui viene richiesta una programmazione un pò più "spinta" come linguaggio Visual Basic, ma ti permette di fare anche molto di più, creare interfacce molto più accattivanti e flessibili.

Quello che puoi imparare da questi libri è la base di partenza, che ti permette poi di espandere le tue macro volta per volta.
Insomma qualcosa c'è, ovviamente bisogna dedicarci molto tempo e non arrendersi davanti agli ostacoli, poi diventerà una "malattia".

Te lo dico perché ho programmato talmente tanto SolidWorks che sto perdendo la testa, in senso buono, ed ero partito 10 anni fa come te ora.

Spero che quanto scritto ti possa essere utile.

Buona giornata
 

New Rider

Utente Standard
Professione: Apprendista
Software: SolidWorks17 + AutocadLt + DraftSight
Regione: Veneto
#65
Ciao a tutti..
Esiste una macro che mi permetta di salvare automaticamente dalla parte 3D (Attivando la ripetizione piatta) il formato DXF?
 

gscav

Utente poco attivo
Professione: ingegnere
Software: solid edge, catia, solidworks, ansys
Regione: campania
#66
Salve a tutti, ho un problema magari semplice di soluzione per gli esperti... cosa che purtroppo personalmente non sono :)
Quando ho un assieme fatto di n parti e voglio inserire la tabella materiali mi interesserebbe vedere comparire dati quali lunghezza, larghezza , spessore dei particolari che in genere , nel mio caso,sono parallelepipedi.
Ho smanettato un pò nelle proprietà ma allo stato attuale solidwork mi richiede il settaggio parte per parte delle proprietà sopra citate per poi vederle comparire nella distinta materiali.
Esiste un sistema che mi consenta di caricare in automatico questi dati per ogni nuova parte senza la modifica della tabella proprietà in modo da cliccare semplicemente sull' inserisci tabella e vedere comparire la distinta materiali con i campi interessati?
Saluto e ringrazio tutti
 

Paco

Utente Junior
Professione: Libero Professionista
Software: SWX-SEdge-Acad-Me10
Regione: Toscana
#69
Ho modificato la macro nella zona ...WorkDir = swApp.... e nella definizione file relativo il codice per lo 'step'.
Allego macro.


Ciao
Gabriele
Ciao Gabryn, l'ho provata con Swx 2016 con Win10 e dà errore. Che sia win 10 che dà probemi?
Ciao e grazie
 

Gabryn

Utente Junior
Professione: Tiralinee
Software: Acad2012,Me10,Swx18
Regione: Bs
#70
Ciao Gabryn, l'ho provata con Swx 2016 con Win10 e dà errore. Che sia win 10 che dà probemi?
Ciao e grazie
Ciao
Ho modificato leggermente la macro perchè da una parte non salvava nelle directory corrette e dall’altra, se non esisteva
la sottocartella predefinita per i pdf, i files non venivano salvati.
Spero fosse questo l’errore che segnalavi. Testato con Win7 64bit e Solidworks 2016 sp.3

Ciao
Gabriele
 

Allegati

dany-devil

Utente poco attivo
Professione: ingegnere
Software: Solidworks
Regione: Calabria
#71
Salve a tutti volevo sapere se qualcuno è conoscenza dell'esistenza di qualche macro che permetta di eseguire in serie simulazioni precompilate con Flow Simulation. Grazie a chi mi risponderà
 

jenuary

Utente Standard
Professione: Progettista e Programmatore VB.Net
Software: Solidworks
Regione: Veneto
#72
No non conosco nulla, ma so che c'è chi le fa, si è fatto fare uno scheduler apposito.
lo scheduler è un programma, che lavora come una sorta di coda di stampa, quando finisce una simulazione ne lancia un'altra,
potresti fare anche in modo che quando finisce una simulazione ti invii una email con i risultati.
Se vuoi qualcosa del genere ti consiglio di sentire il tuo rivenditore, è difficile trovare in rete qualcosa del genere.
 

Byron

Utente Junior
Professione: Progettista
Software: Solidworks 2016 Sp.3 ; Caddy++ 2013
Regione: Toscana
#73
Esistenza macro che mi permetta di esportare dxf, step e pdf salvando il file con il nome uguale non a quello del file di origine ma di una proprietá dello stesso? Lavoro sotto pdm standard..
 

Hisoka

Utente poco attivo
Professione: Disegnatore tecnico
Software: Solidworks 2015, Draftsight
Regione: Veneto
#74
Buonasera a tutti,

durante la mia giornata in ufficio uso a sfinimento la seguente procedura per duplicare tavola+parte e tavola+assieme

Entro nella tavola di un particolare -> salva con nome -> salva come copia -> do il nome al nuovo file e scelgo la cartella dove andare a salvarlo -> metto la spunta su "includi tutti i componenti con riferimenti" -> clicco su avanzate -> tolgo la spunta da "includi riferimenti scomposti" -> cambio il nome della parte dando lo stesso della nuova tavola -> metto la stessa cartella di destinazione della tavola -> finalmente salvo....con gli assieme la stessa cosa

Questo mi permette di creare una tavola e una parte/assieme uguali a quelli di partenza ma completamente slegate...facendo tanti pezzi simili ma sempre diversi questa procedura è veramente utile...ma vorrei riuscire ad abbreviare il procedimento comprimendo il tutto con una macro

Qualcuno sa se esiste qualcosa di simile????

Grazie mille a tutti
 

Polymar

Utente Standard
Professione: CAD/CAM/CAE Senior Engineer
Software: ZW3D, SWX, ThinkDesign, Autodesk Moldflow
Regione: ER
#76
Salve, non ho trovato ancora nulla inerente il mio problema, quindi penso che questo sia il posto giusto per chiedere a chi è più competente di me :) Purtroppo, come accade molto spesso a chi è costretto ad interfacciarsi con i reparti di produzione, è tassativamente richiesto di aggiungere a tutte le quote del disegno la relativa tolleranza "simmetrica", seppure già regolate dalla iso 2768-m. Questo viene fatto - dicono - per risparmiare tempo all'operatore, ed evitando che egli compia errori di interpretazione (sono interinali...), oltre al fatto che anche gli addetti del cq vogliono tutto pronto sul piatto. Sì, esatto, come avete capito sono dei gran spacca... tasche! allora vi chiedo cortesemente se esiste una macro che cliccando le quote, aggiunge automaticamente la tolleranza simmetrica col grado medio. Grazie a chi mi illuminerà la mente, magari svincolandomi da questo noioso modo di riempire i disegni con tantissimi e simpaticissimi numerini ;)
 

Polymar

Utente Standard
Professione: CAD/CAM/CAE Senior Engineer
Software: ZW3D, SWX, ThinkDesign, Autodesk Moldflow
Regione: ER
#78
@MassiVonWeizen: Grazie della fulminante risposta, e scusami se ho esposta male la mia domanda. Per fare un caso pratico, nel drawing carico la macro, seleziono una quota (es. 10), e automaticamente aggiungere la tolleranza "+-0,2", come da iso 2768-m. Logicamente la macro non deve aggiungere un testo fisso preimpostato, ma valutare il valore sul quale aggiungere la tolleranza simmetrica. Credo cmq che molti altri avranno certamente la stessa necessità, essendo questo il classico task che può essere automatizzato dal sistema cad.

Fra l'altro, il simbolo "==", oltre che essere fuori norma e dunque proibito, è pure "respinto" dai cq perchè non indica un valore numerico sul quale associare una quota critica o importante per il controllo in fase di precampionatura ... che mondo difficile! ;)

Grazie ancora ;)
 
Professione: disegnatore
Software: autocad 2013; solidworks 2014 e 2017
Regione: Friuli Venezia Giulia
#79
avevo fatto confusione io. anche a me risulta che non sia a norma, ma sto cercando di non discutere le richieste che vengono fatte; poi ogni ufficio tecnico ha le sue paranoie.
tornando alla questione, come fai a far valutare il valore alla macchina? la stessa quota può essere per esempio ±0.2 sui fori di bloccaggio di un carter e ±0.05 sui fori di spinatura di uno stampo.
e poi vorresti lanciare la macro e ti fai tutte le quote che hanno quel tipo di tolleranza oppure la associ ad un tasto oppure vorresti lanciarla ogni volta che devi mettere la tolleranza?
considera che anche a questo puoi assegnare uno stile, quindi potresti crearti tanti stili quante le tolleranze più comuni per esempio: ±0.05 ±0.1 ±0.2 ±0.5 e le richiameresti nella finestrella dedicata
Immagine.jpg
 

Polymar

Utente Standard
Professione: CAD/CAM/CAE Senior Engineer
Software: ZW3D, SWX, ThinkDesign, Autodesk Moldflow
Regione: ER
#80
Ti ringrazio ancora per la disponibilità, effettivamente sto complicando tutto quando magari esiste una facile soluzione come hai proposto tu, passando dagli stili. Domani provo subito questa soluzione. Certamente non è SWX che deve applicare le tolleranze all'apertura del drawing, altrimenti avrebbe già un IQ superiore a quello del sottoscritto :) Ricordo di aver già visto la soluzione ideale anni fa implementata sotto ME10, e poi su PRO/E. In entrambi i casi era stato aggiunto un pulsante con icona "+-0,1","+-0,2", etc etc in modo che premendo uno di questi pulsanti e poi toccando sequenzialmente le quote veniva aggiunto il testo dell'icona dopo il valore nominale. Si andava avanti toccando tutte le altre quote (quindi è sempre il disegnatore che sceglie quale valore applicare e a quale quota). Certamente ciò sarebbe più veloce che digitare tutte le volte sempre i medesimi valori su ogni singola quota. Il top sarebbe un pulsante che richiama una macro ad esempio per il grado medio, in modo che toccando una quota, legge il valore nominale, e in un modo o nell'altro, ovvero aggiungendo un campo testo come suffisso o ancora meglio impostando la tolleranza simmetrica propria di SWX, possa secondo uno schema ifthenelse valutare quale valore del grado medio apporre. Poi quando l'operatore ha finito di toccare le quote interessate, preme escape e la macro finisce. Sto guardando i comandi VBA e ormai capisco che le classi per agire sulle costanti e variabili del programma esistono già tutte, per cui si tratta soltanto di saperle gestire.
Mi rendo conto che certe richieste (anzi giustamente paranoie come hai detto tu) non fanno altro che trasformare il facile in difficile, ma al giorno d'oggi le ditte per risparmiare mettono sulle macchine (fresatrici e torni) interinali che fino al giorno prima facevano tutt'altro mestiere, e allora per non saper leggere nè scrivere, devono avere tutto pronto in mano. In breve, non devono scegliere, non devono decidere, non devono pensare. Triste ma vero. Ciao e ancora grazie.