Pagina 4 di 9 PrimaPrima ... 23456 ... UltimaUltima
Risultati da 31 a 40 di 81
  1. #31
    Utente Standard L'avatar di jenuary
    Iscritto dal
    2007
    Messaggi
    385
    Professione
    Progettista e Programmatore VB.Net
    Regione
    Veneto
    Software
    Solidworks

    Predefinito

    Come sai il tempo per creare una macro dinamica è molto lungo, e quando posso sto cercando di creare qualcosa di parallelo a quello che stai cercando di programmare, inmodo da venirti incontro il piu possibile.
    Pultroppo o poco tempo durante il giono ma quando posso approfondisco, comunque sia per rispondere alla tua domanda
    devi creare una function per ogni entità.
    Per ogni entità quandi la function ne ricava i dati (punti di inicio fine, centro, ecc, ) e poi sempre al suo interno la suddividi in ulteriori punti mediante calcoli matematici (equazioni della retta, ecc.)
    Ciao a presto e ...
    Buon Natale a te e a tutti gli utenti del forum

  2. #32
    Utente Junior
    Iscritto dal
    2013
    Messaggi
    59
    Professione
    Ingegnere Meccanico
    Regione
    Emilia Romagna
    Software
    SolidWorks, Solid Edge, Inventor, Autocad

    Predefinito

    Ok, innanzitutto grazie mille per l'aiuto che mi stai dando, perchè sei l'unico con cui sto riuscendo a confrontarmi!
    Io pensavo di ricorrere all'istruzione:

    vFeatArr = swFeatMgr.InsertReferencePoint(swRefPointAlongCurv e, swRefPointAlongCurveEvenlyDistributed, 0#, 100)

    che se non sbaglio serve per creare punti di riferimento (in questo caso 100) ugualmente distribuiti lungo una curva.
    Secondo te è una soluzione che semplificherebbe un po' le cose?

    Pensavo dunque di scrivere una function per ogni entità (retta, arco, spline, etc) e far eseguire quell'istruzione per ogni tratto di curva. Magari è una cosa un po' dozzinale, ma se semplificasse le cose sarebbe per me già un buon inizio.

    Ti allego una macro che ho trovato in rete che fa questa cosa per una spline. Mi piacerebbe riuscire ad applicarla ai miei tratti di curva, e penso non sia difficile, ma data la mia poca esperienza mi trovo un po' in imbarazzo a fondere questa macro nella mia.

    Dividi_spline _in_punti.rar

  3. #33
    Utente Junior
    Iscritto dal
    2013
    Messaggi
    59
    Professione
    Ingegnere Meccanico
    Regione
    Emilia Romagna
    Software
    SolidWorks, Solid Edge, Inventor, Autocad

    Predefinito

    L'unica cosa è che la macro della spline che ho postato crea i punti al di fuori dello schizzo, quindi non è esattamente la cosa voluta, dal momento che servono dentro lo schizzo.

    Grazie ancora e Buon Natale a tutti

  4. #34
    Utente Standard L'avatar di jenuary
    Iscritto dal
    2007
    Messaggi
    385
    Professione
    Progettista e Programmatore VB.Net
    Regione
    Veneto
    Software
    Solidworks

    Predefinito

    Ciao, credo di aver fatto centro, ritengo che la macro che ti ho scritto ora sia quello che cerchi.
    Prerequisiti:
    - Parte aperta e schizzo esistente con un profilo o una singola entità.
    Risultato:
    - scansione di ogni entità del contorno e estrapolazione dei dati per ciascuna di esse

    Ora all'interno della Function del segmento e dell'arco devi inserire dei calcoli matematici per il calcolo degli ulteriori punti che ti servono (es. punto medio del semento, punto medio della porzione di arco, ecc).

    Ti allego come traccia un link dove trovi l'esempio di alcune equazioni della retta e del punto medio, angolo della retta cc.
    http://www.ripmat.it/mate/d/dc/dcd.html

    Questa parte, se fossi in tè, la gestirei con una Userform, dove setto i parametri di suddivisione dei punti aggintivi, così che il tuo codice sia dinamico.

    Spero di averti fatto trovare un regalo sotto l'albero.

    Auguri a tutti
    Jenuary
    File Allegati File Allegati

  5. #35
    Utente Junior
    Iscritto dal
    2013
    Messaggi
    59
    Professione
    Ingegnere Meccanico
    Regione
    Emilia Romagna
    Software
    SolidWorks, Solid Edge, Inventor, Autocad

    Predefinito

    Guarda non so come ringraziarti!!E' stato davvero un regalo molto gradito!...Adesso cercherò di lavorarci un po' su da solo e appena sarò riuscito a combinare qualcosa la posterò su questa discussione così che anche gli altri utenti ne possano usufruire!...

    Grazie ancora del tuo prezioso aiuto!

    Auguri a tutti

  6. #36
    Utente Junior
    Iscritto dal
    2013
    Messaggi
    59
    Professione
    Ingegnere Meccanico
    Regione
    Emilia Romagna
    Software
    SolidWorks, Solid Edge, Inventor, Autocad

    Predefinito

    Ho solo alcune domande da farti così posso capire meglio come muovermi:

    1- I calcoli che io devo inserire per ricavarmi i vari punti, li devo inserire all'interno delle "Sub ProcessSketchEllipse, Sub ProcessSketchLine, etc..." giusto? O all'interno della Function iniziale "Function TransformSketchPointToModelSpace"?

    2- Ho provato a compilare la macro ma mi rilascia qualche errore. Le righe incriminate sono:

    - Debug.Print Sketch.Name : Error Variabile oggetto o variabile del blocco With non impostata
    - ProcessTextFormat swApp, swModel, swSkText.GetTextFormat

    3- Curiosità: Line = retta, Arch = cerchio, Ellipse = ellisse, Spline = spline, Text = ???


    Grazie ancora e auguri

  7. #37
    Utente Standard L'avatar di jenuary
    Iscritto dal
    2007
    Messaggi
    385
    Professione
    Progettista e Programmatore VB.Net
    Regione
    Veneto
    Software
    Solidworks

    Predefinito

    I calcoli vanno eseguiti dentro alla Function
    Text è uno schizzo di testo, ma credo non faccia per te.
    Credo che tu i profili che utilizzerai saranno archi e segmenti, il resto non credo ti serca.
    Ciao

  8. #38
    Utente Junior
    Iscritto dal
    2013
    Messaggi
    59
    Professione
    Ingegnere Meccanico
    Regione
    Emilia Romagna
    Software
    SolidWorks, Solid Edge, Inventor, Autocad

    Predefinito

    Ok a questo punto credo di aver capito dove andare ad agire.
    A questo punto però ti rompo le scatole con un'ultima curiosità: se io volessi semplicemente suddividere i miei segmenti di curva in un certo numero di punti (ad esempio 100 punti) dovrei andare ad agire sulla function e utilizzare le equazioni della retta, circonferenza etc per generarli?
    Ciò che mi hai proposto di scrivere tu sembra più rivolto a trovare dei punti specifici (ad esempio il punto medio di un segmento, il punto medio di un arco di cerchio, etc...), ma se io volessi semplicemente suddividere i segmenti in n punti ugualmente distanziati, fregandomene della loro posizione ma importandomi solo il numero di questi punti, dovrei agire sempre allo stesso modo?
    Questa è una curiosità molto importante per me, dato che la macro che sto cercando di creare dovrebbe fare proprio questo.

    Grazie ancora e scusa per il continuo disturbo

  9. #39
    Utente Standard L'avatar di jenuary
    Iscritto dal
    2007
    Messaggi
    385
    Professione
    Progettista e Programmatore VB.Net
    Regione
    Veneto
    Software
    Solidworks

    Predefinito

    Il link che ti avevo inserito era solo un esempio, in realtà dovresti trovare o studiare un'equazione che ti permetta di ricavare le coordinate dei punti di suddivisione.
    Per il cerchio per esempio io la vedrei cosi:
    Avendo centro, punto iniziale e punto finale, dovresti avere ance l'angolo della porzione di circonferenza, che a sua volta suddividendolo in 101 parti per esempio, trovi l'angolo della tua porzione.
    Da questo poi ne ricavi il punto iniziale e finale del tuo pezzo.
    Usando un
    Dim angolo as Double
    Dim MyAngolo as Double

    Angolo=angolo totale del mio arco
    MyAngolo=Angolo\101
    For i=o to 101 (dove 101 ti serve per creare le 100 divisioni)
    ....
    ....
    MyAngolo=MyAngolo+MyAngolo
    next

    C'è da lavorare per scrivere un codice flessibile, ma credo sia più semplice di quello che pensiamo, dobbiamo rispolverare i libri di matematica.
    Ad ogni calcolo di un punto, si potrebbe pensare di crearlo fisicamente all'interno del tuo schizzo oppure popolare una lista nel tuo form e crearli se si vuole succesivamente secondo altre regole (solo meta di essi per esempio).

  10. #40
    Utente Junior
    Iscritto dal
    2013
    Messaggi
    59
    Professione
    Ingegnere Meccanico
    Regione
    Emilia Romagna
    Software
    SolidWorks, Solid Edge, Inventor, Autocad

    Predefinito

    Ok grazie mille per l'aiuto, ora proverò a lavorarci un po' su! Appena avrò tirato fuori qualcosa lo posterò qui!

    Ciao


  • Pagina 4 di 9 PrimaPrima ... 23456 ... UltimaUltima

    Discussioni Simili

    1. Calcolare il volume
      Di fapalti27 nel forum Altri CAD per la Meccanica
      Risposte: 5
      Ultimo Messaggio: 18-09-2017, 19: 31
    2. Macro coordinate punti
      Di erf nel forum Solidworks
      Risposte: 21
      Ultimo Messaggio: 02-11-2011, 17: 54
    3. Calcolare il peso
      Di ciccino nel forum AutoCAD
      Risposte: 3
      Ultimo Messaggio: 05-11-2010, 21: 20
    4. Risposte: 14
      Ultimo Messaggio: 13-09-2010, 15: 33
    5. Calcolare un'espressione
      Di Shaba nel forum OneSpace Designer Modeling
      Risposte: 26
      Ultimo Messaggio: 14-01-2008, 09: 45

    Segnalibri

    Segnalibri

    Permessi di Scrittura

    • Tu non puoi inviare nuove discussioni
    • Tu non puoi inviare risposte
    • Tu non puoi inviare allegati
    • Tu non puoi modificare i tuoi messaggi
    •  





    CAD3D.it - la community dei progettisti