• このフォーラムは、www.cad3d.it/forum1 - イタリアのデザインコミュニティの機械翻訳です。いくつかの用語は正しく翻訳されていません。

ソリッドワークスの興味深いマクロ

  • Thread starter Thread starter cubalibre00
  • Start date Start date
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
 

Attachments

scusa ma non basta mostrare le viste solo a spigoli visibili senza fare cose strane?
 
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
 
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
 
ciao a tutti..
esiste una macro che mi permetta di salvare automaticamente dalla parte 3d (attivando la ripetizione piatta) il formato dxf?
 
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
 
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
 
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
 

Attachments

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à
 
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.
 
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..
 
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
 
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 ;)
 
@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 ;)
 
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
 
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.
 

Forum statistics

Threads
46,674
Messages
380,976
Members
2
Latest member
loop80
このフォーラムは、www.cad3d.it/forum1 - イタリアのデザインコミュニティの機械翻訳です。いくつかの用語は正しく翻訳されていません。

Members online

No members online now.
Back
Top