Creare una dima di controllo su un oggetto
Forum rules
regole del forum e le informazioni utili
Importante: PRIMA di chiedere aiuto leggete qui!
regole del forum e le informazioni utili
Importante: PRIMA di chiedere aiuto leggete qui!
Creare una dima di controllo su un oggetto
Buonasera,
sono nuovissimo del Forum, potreste aiutarmi a capire come poter costruire una dima/calibro di controllo su un'oggetto che importo.
Allego un formato STEP come esempio.
Saluti
sono nuovissimo del Forum, potreste aiutarmi a capire come poter costruire una dima/calibro di controllo su un'oggetto che importo.
Allego un formato STEP come esempio.
Saluti
- Attachments
-
- MATTONCINO LEGO ROSSO.step
- (91.5 KiB) Downloaded 51 times
Re: Creare una dima di controllo su un oggetto
In che senso, delle tacche per verificare delle misure?
se si
I parametri sono:
mp_w = 80 regola la distanza in larghezza (asse X se non ricordo male) -40 +40
mp_l = 50 regola la distanza in lunghezza (asse Y se non ricordo male) -25 25
mp_th = 50 regola la distanza in altezza asse Z
g_si=(5, 5, 5) gli step della griglia per ogni asse in mm
trsp = 95 la trasparenza della griglia
Salva il codice com efile con estensione py ad esempio griglia.py
Caricalo e lanciato dovrebbe visualizzare nel documento attivo (da errore se non c'è un documento aperto) la griglia centrata sull'origine.
Ovviamente giocando con i valori o modificando il codice ottieni quello che desideri
in pratica ho creato dei piani (che non hanno spessore) che intersecano il modello se è centrato sull'origine in punti calcolati.
Spero di aver capito la domanda e di essere stato charo nella spiegazione.
Saluti
Carlo D.
se si
Code: Select all
import FreeCAD
from FreeCAD import Base, Vector
import Part
from math import pi, sin, cos
import Draft
DOC = FreeCAD.activeDocument()
def ref_grid_3d(doc, mp_w=80, mp_l=50, mp_th=50, g_si=(5, 5, 5), trsp = 95):
"""
Draw a 3D reference grid
"""
obj = []
for pos_z in range(0, mp_th+1, g_si[2]):
pname = "Z_{0}".format(pos_z)
if pos_z % 2 == 0:
r_d = mp_l + 5
# print (x)
else:
r_d = mp_l
if pos_z == mp_th * 0.5:
r_d = mp_l + 10
h_z = pos_z - mp_th * 0.5
obj1 = doc.addObject("Part::Feature", pname)
obj1.Shape = Part.makePlane(mp_w, r_d, Vector(mp_w * -0.5, r_d * -0.5))
obj1.Placement = FreeCAD.Placement(Vector(0, 0, h_z),
FreeCAD.Rotation(0, 0, 0))
obj1.ViewObject.ShapeColor = (0.33, 0.67, 1.00)
obj1.ViewObject.Transparency = trsp
obj.append(obj1)
for pos_x in range(0, mp_w+1, g_si[0]):
if pos_x % 2 == 0:
r_d = mp_l + 5
# print (x)
else:
r_d = mp_l
if pos_x == mp_w * 0.5:
r_d = mp_l + 10
h_w = pos_x - mp_w * 0.5
pname = "X_{0}".format((mp_w * -0.5) + pos_x)
obj1 = doc.addObject("Part::Feature", pname)
obj1.Shape = Part.makePlane(mp_th, r_d, Vector(0, 0), Vector(1, 0, 0))
obj1.Placement = FreeCAD.Placement(Vector(h_w, r_d * 0.5, mp_th * -0.5),
FreeCAD.Rotation(0, 0, 0))
obj1.ViewObject.ShapeColor = (0.33, 0.67, 1.00)
obj1.ViewObject.Transparency = trsp
obj.append(obj1)
for pos_y in range(0, mp_l+1, g_si[1]):
if pos_y % 2 == 0:
r_d = mp_w + 5
# print (y)
else:
r_d = mp_w
if pos_y == mp_l * 0.5:
r_d = mp_w + 10
h_l = pos_y - mp_l * 0.5
#print("Pos Y = ",pos_y)
pname = "Y_{0}".format(pos_y)
obj1 = doc.addObject("Part::Feature", pname)
#obj1.Shape = Part.makePlane(mp_l, r_d, Vector(-h_l, r_d * 0.5), Vector(1, 0, 0))
obj1.Shape = Part.makePlane(mp_l, r_d, Vector(0, 0, 0), Vector(0, 1, 0))
obj1.Placement = Base.Placement(Vector(-r_d * 0.5, h_l, mp_l * -0.5),
FreeCAD.Rotation(0, 0, 0))
obj1.ViewObject.ShapeColor = (0.33, 0.67, 1.00)
obj1.ViewObject.Transparency = trsp
obj.append(obj1)
#"""
zp_w = mp_w + 30
zp_l = mp_l + 30
zero = Part.makePlane(zp_w, zp_l, Vector(zp_w * -0.5, zp_l * -0.5, 0), Vector(0, 0, 1))
pl2 = doc.addObject("Part::Feature", "zero_plane")
pl2.Shape = zero
pl2.ViewObject.ShapeColor = (1.00, 0.41, 0.70)
pl2.ViewObject.Transparency = 60
pl1 = doc.addObject("Part::Compound", "ref_plane")
pl1.Links = obj
pl1.ViewObject.ShapeColor = (0.33, 0.67, 1.00)
pl1.ViewObject.Transparency = trsp
pl1.ViewObject.Visibility = False
doc.recompute()
ref_grid_3d(DOC, 80, 50, 50, (5, 5, 5), 95):
DOC.recompute()
mp_w = 80 regola la distanza in larghezza (asse X se non ricordo male) -40 +40
mp_l = 50 regola la distanza in lunghezza (asse Y se non ricordo male) -25 25
mp_th = 50 regola la distanza in altezza asse Z
g_si=(5, 5, 5) gli step della griglia per ogni asse in mm
trsp = 95 la trasparenza della griglia
Salva il codice com efile con estensione py ad esempio griglia.py
Caricalo e lanciato dovrebbe visualizzare nel documento attivo (da errore se non c'è un documento aperto) la griglia centrata sull'origine.
Ovviamente giocando con i valori o modificando il codice ottieni quello che desideri
in pratica ho creato dei piani (che non hanno spessore) che intersecano il modello se è centrato sull'origine in punti calcolati.
Spero di aver capito la domanda e di essere stato charo nella spiegazione.
Saluti
Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.
Blog: https://okkmkblog.wordpress.com/
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.
Blog: https://okkmkblog.wordpress.com/
-
- Posts: 221
- Joined: Thu Jun 22, 2017 1:15 pm
Re: Creare una dima di controllo su un oggetto
Cosa vuoi fare esattamente?
I love free projects
https://www.youtube.com/mauriziospaccialbelli
https://www.youtube.com/mauriziospaccialbelli
Re: Creare una dima di controllo su un oggetto
Buonasera, grazie per la risposta, ma non è quello che avevo di bisogno.
Provo a spiegarmi meglio, lavoro in una azienda che fa tubazioni... non posso usare i programmi professionali usati in Azienda... Quindi sto provando con FreeCAD a importare uno Step dei nostri tubi e realizzare una Dima che ad esempio controlla la su dimensione ( curva, tratto ecc... ).Il problema è che quando entrò nello Sketch è uso la funzione usa geometria esterna non sente i lati del tubo, al max i tratti dritti diventano verdi e non Magenta.Purtroppo non posso mandarvi lo Step reale, per questioni di privacy.
Invece con il mattoncino Lego in qualche maniera sono riuscito a farlo. Spero di essere stato chiaro. Grazie mille ancora per la vostra collaborazione.
Saluti
Provo a spiegarmi meglio, lavoro in una azienda che fa tubazioni... non posso usare i programmi professionali usati in Azienda... Quindi sto provando con FreeCAD a importare uno Step dei nostri tubi e realizzare una Dima che ad esempio controlla la su dimensione ( curva, tratto ecc... ).Il problema è che quando entrò nello Sketch è uso la funzione usa geometria esterna non sente i lati del tubo, al max i tratti dritti diventano verdi e non Magenta.Purtroppo non posso mandarvi lo Step reale, per questioni di privacy.
Invece con il mattoncino Lego in qualche maniera sono riuscito a farlo. Spero di essere stato chiaro. Grazie mille ancora per la vostra collaborazione.
Saluti
Re: Creare una dima di controllo su un oggetto
Se non ho capito male usi il formato STEP.
Presumo che Il formato sia STEP se non ricordo male sia una modellazione a triangoli, per cui sketcher, che dovrebbe essere più vicino al disegno, non è che c'azzecchi molto (come direbbe un noto politico).
Se importi il file in formato STEP potrebbe darsi che venga importato come Mesh e non come solido, va verificato il risultato dell'importazione, se è una mesh, potresti doverla convertire in solido prima di poterci operare sopra.
Alternativamente se vai in Modifica -> Preferenze importa/Esporta dovresti trovare delle schede per ogni formato, magari qualche impostazione per STEP o IGES potrebbe influenzare il modo con cui un solido è importato.
Saluti
Carlo D.
Presumo che Il formato sia STEP se non ricordo male sia una modellazione a triangoli, per cui sketcher, che dovrebbe essere più vicino al disegno, non è che c'azzecchi molto (come direbbe un noto politico).
Se importi il file in formato STEP potrebbe darsi che venga importato come Mesh e non come solido, va verificato il risultato dell'importazione, se è una mesh, potresti doverla convertire in solido prima di poterci operare sopra.
Alternativamente se vai in Modifica -> Preferenze importa/Esporta dovresti trovare delle schede per ogni formato, magari qualche impostazione per STEP o IGES potrebbe influenzare il modo con cui un solido è importato.
Saluti
Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.
Blog: https://okkmkblog.wordpress.com/
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.
Blog: https://okkmkblog.wordpress.com/
Re: Creare una dima di controllo su un oggetto
Buongiorno, grazie per la info...
Dato che non sono un esperto c'è qualche tutorial che spiega questo passaggio da te suggerito, cioè di convertire da Mesh a solido?
Oppure potresti indicarmi i passaggi
Grazie ancora per la tua pazienza
Dato che non sono un esperto c'è qualche tutorial che spiega questo passaggio da te suggerito, cioè di convertire da Mesh a solido?
Oppure potresti indicarmi i passaggi
Grazie ancora per la tua pazienza
Re: Creare una dima di controllo su un oggetto
Anche se sono aggiornatissmi questi link dovrebbe essere un buon inizio.
https://wiki.freecadweb.org/FreeCAD_Howto_Import_Export
https://wiki.freecadweb.org/FreeCAD_and_Mesh_Import/it
Saluti
Carlo D.
https://wiki.freecadweb.org/FreeCAD_Howto_Import_Export
https://wiki.freecadweb.org/FreeCAD_and_Mesh_Import/it
Saluti
Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.
Blog: https://okkmkblog.wordpress.com/
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.
Blog: https://okkmkblog.wordpress.com/
Re: Creare una dima di controllo su un oggetto
Grazie gentilissimo..
ma purtroppo non riesco a usarlo ho visto i Tutorial su youtube ma non riesco ad usarlo.
Probabilmente da regolamento non si può, ma sarebbe bello se ci potessimo sentire tramite Tel. o via Skype per spiegare meglio quello che vorrei fare, oppure se c'è un punto di riferimento a Torino per fare un corso o chiedere nei dettagli.
mi spiace di essere cosi poco pratico ma vorrei imparare ad usare questo programma, dato che ho già realizzato qualche lavoretto.
Saluti
ma purtroppo non riesco a usarlo ho visto i Tutorial su youtube ma non riesco ad usarlo.
Probabilmente da regolamento non si può, ma sarebbe bello se ci potessimo sentire tramite Tel. o via Skype per spiegare meglio quello che vorrei fare, oppure se c'è un punto di riferimento a Torino per fare un corso o chiedere nei dettagli.
mi spiace di essere cosi poco pratico ma vorrei imparare ad usare questo programma, dato che ho già realizzato qualche lavoretto.
Saluti
-
- Posts: 221
- Joined: Thu Jun 22, 2017 1:15 pm
Re: Creare una dima di controllo su un oggetto
Non credo che step sia di tipo mesh, comunque controlla il file step problematico che sia un solido valido
https://wiki.freecadweb.org/Part_CheckGeometry/it
Se da errore prova a convertirlo in solido con
https://wiki.freecadweb.org/Part_ConvertToSolid/it
E affinarlo con
https://wiki.freecadweb.org/Part_RefineShape/it
E ricontrolli la geometria con lo strumento indicato all'inizio
Ricorda che "geometria esterna" di sketcher funziona solo se condivide le stesse origini(stesso sistema di cordinate), se non le condivide(per qualche motivo) usa shapebinder(legaforma) sulla faccia interessata, portandola nello stesso sistema di coordinate, cosi userai "geometria esterna" sull'oggetto risultate di legaforma
https://wiki.freecadweb.org/PartDesign_ShapeBinder/it
Non potendo vedere il file è difficile indovinare, ma ci proviamo, spero risolvi.
Un saluto
I love free projects
https://www.youtube.com/mauriziospaccialbelli
https://www.youtube.com/mauriziospaccialbelli
Re: Creare una dima di controllo su un oggetto
Tnato per i posteri, non per creare polemica, ma magari a qualcuno torna utile saperlo
STEP in teoria dovrebbe contenere la descrizione del solido, tutto dipende da come viene formato,
Una descrizione veloce da wikipedia:
the format is not well-defined, for example the same triangle can be encoded in a STEP file literally hundreds of different ways (with FACET_BREP, ADVANCED_FACE, POLY_LOOP, EDGE_LOOP, as a MANIFOLD_SOLID_REPRESENTATION or as a SHELL_BASED_REPRESENTATION, etc.).
STEP è uno standard https://en.wikipedia.org/wiki/ISO_10303-21 creato anni fa per scambiare dati tra diverse applicazioni.
Potrebbe risultare utile, se si usa windows questo programma:
https://www.nist.gov/services-resources ... and-viewer
che analizza e visualizza il file, penso che lafonte sia abbastanza autorevole.
Al solito dipende da come una applicazione intende "lo standard" e per che scopo quel formato è usato, ad esempio se il fomrmato è più compatto e meglio tramsissibile ad esempio via mail tra una società e l'altra del formato proprietario del programma che a volte non passa dai filtri antivirus dei mail server.
Oppure come in genere in certi ambiti è usato per passare i dati di progettazione a diversi applicativi, ad esempio un CAD 2D per creare i disegni tecnici da passare alla carpenteria, oppure ad un programma di analisi FEM o altro, in genere si usano formati standard proprio per questo tipo di interscambio.
Ora senza avere a diposizione il file, una schermata del programma, si può purtroppo andare solo a tentativi, o meglio "a tastoni".
Saluti
Carlo D.
STEP in teoria dovrebbe contenere la descrizione del solido, tutto dipende da come viene formato,
Una descrizione veloce da wikipedia:
the format is not well-defined, for example the same triangle can be encoded in a STEP file literally hundreds of different ways (with FACET_BREP, ADVANCED_FACE, POLY_LOOP, EDGE_LOOP, as a MANIFOLD_SOLID_REPRESENTATION or as a SHELL_BASED_REPRESENTATION, etc.).
STEP è uno standard https://en.wikipedia.org/wiki/ISO_10303-21 creato anni fa per scambiare dati tra diverse applicazioni.
Potrebbe risultare utile, se si usa windows questo programma:
https://www.nist.gov/services-resources ... and-viewer
che analizza e visualizza il file, penso che lafonte sia abbastanza autorevole.
Al solito dipende da come una applicazione intende "lo standard" e per che scopo quel formato è usato, ad esempio se il fomrmato è più compatto e meglio tramsissibile ad esempio via mail tra una società e l'altra del formato proprietario del programma che a volte non passa dai filtri antivirus dei mail server.
Oppure come in genere in certi ambiti è usato per passare i dati di progettazione a diversi applicativi, ad esempio un CAD 2D per creare i disegni tecnici da passare alla carpenteria, oppure ad un programma di analisi FEM o altro, in genere si usano formati standard proprio per questo tipo di interscambio.
Ora senza avere a diposizione il file, una schermata del programma, si può purtroppo andare solo a tentativi, o meglio "a tastoni".
Saluti
Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.
Blog: https://okkmkblog.wordpress.com/
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.
Blog: https://okkmkblog.wordpress.com/