Macro Texture

From FreeCAD Documentation
This page is a translated version of the page Macro Texture and the translation is 37% complete.
Outdated translations are marked like this.

Texture

Descrizione
Crea una immagine 3D partendo da una immagine BMP.

Versione macro: 0.14c
Ultima modifica: 2021/01/16
Versione FreeCAD: 0.18 e superiore
Download: ToolBar Icon, Macro Loft FCCreaLoft
Autore: Mario52
Autore
Mario52
Download
ToolBar Icon, Macro Loft FCCreaLoft
Link
Versione macro
0.14c
Data ultima modifica
2021/01/16
Versioni di FreeCAD
0.18 e superiore
Scorciatoia
Nessuna
Vedere anche
FCCreaLoft Macro Loft

Description

Descrizione

Questa macro permette di creare facilmente un modello 3D partendo da una immagine bitmap con 256 livelli di grigio.

Siccome con questa macro si può convertire qualsiasi immagine in oggetti 3D senza alcun intervento, spero che questo cambi il modo di concepire il CAD e il CNC.

Tutto diventa possibile indipendentemente dalla complessità dell'immagine!

La macro FCCreaLoft Macro Loft permette di automatizzare il "multi loft"

Temporary code for external macro link. Do not use this code. This code is used exclusively by Addon Manager. Link for optional manual installation: Macro


# This code is copied instead of the original macro code
# to guide the user to the online download page.
# Use it if the code of the macro is larger than 64 KB and cannot be included in the wiki
# or if the RAW code URL is somewhere else in the wiki.

from PySide import QtGui, QtCore

diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,
    "Information",
    "This macro must be downloaded from this link\n"
    "\n"
    "https://gist.githubusercontent.com/mario52a/262317bc7d8555885b0e/raw/3ec2ab127d8ad01a6b657aa5df9a6127ff07c7c0/Macro%2520FCTexture.FCMacro" + "\n"
    "\n"
    "Quit this window to access the download page")

diag.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)
diag.setWindowModality(QtCore.Qt.ApplicationModal)
diag.exec_()

import webbrowser 
webbrowser.open("https://gist.githubusercontent.com/mario52a/262317bc7d8555885b0e/raw/3ec2ab127d8ad01a6b657aa5df9a6127ff07c7c0/Macro%2520FCTexture.FCMacro")


Texture 004 Honda

Usage

Uso

Questo macro ha bisogno di una immagine con 256 livelli di grigio (0-255) (8 bit) pertanto prima di utilizzare la macro è necessario convertire l'immagine in scala di grigi. Il numero di colori viene rilevato automaticamente. Ogni colore viene trattato come un livello di grigio, il bianco (255) è il livello più alto e il nero (0) è il livello più basso. Se l'immagine ha più di 256 colori (32 bit) viene attivato il modo Plan. (Il tempo di esecuzione delle funzioni di visualizzazione dei punti può essere molto lungo)

La configurazione si esegue prima di aprire il file, i valori predefiniti producono un disegno con le seguenti dimensioni:

  • la coordinata X è la larghezza dell'immagine in punti,
  • la coordinata Y è l'altezza dell'immagine in punti,
  • la coordinata Z è la profondità o spessore del disegno adattato a 10 mm (256 mm in modo raw).

In FreeCAD il file dell'immagine si sviluppa come in una scansione x1 x2 x3 ... con incrementi del valore y di 1 mm per volta. Il valore di z è determinato dal valore del colore. Questi valori sono configurabili nell'interfaccia della macro.

Attenzione: secondo le dimensioni dell'immagine, il file del disegno può diventare molto grande! Tenere presente che un'immagine di 100 px di larghezza e 100 px di altezza produce 100 x 100 = 10000 punti e quindi, siccome a ogni punto corrisponde una coordinata, ci sono 10000 coordinate XYZ o vettori.

L'interfaccia

Texture 002
Texture 002

Coordinates

Coordinate

  • Coordinate X: 0,00 mm  : Coordinata X della posizione dell'oggetto, di default : 0.
  • Coordinate Y: 0,00 mm  : Coordinata Y della posizione dell'oggetto, di default : 0.
  • Coordinate Z: 0,00 mm  : Coordinata Z della posizione dell'oggetto, di default : 0.

Stretching

Stetching

  • Stetching X 0,00 mm  : diminuisce o aumenta la lunghezza dell'oggetto, di default : 0.
  • Stetching Y 0,00 mm  : aumenta l'altezza dell'oggetto, di default : 0.
  • Stetching Z 0,00 mm  : diminuisce o aumenta la profondità dell'oggetto, di default : 0.

Inversion

Inversion

  • Axis X : Inverte le coordinate X dell'immagine.
  • Axis Y : Inverte le coordinate Y dell'immagine.
  • Axis Z : Inverte le coordinate Z dell'immagine.

8 bit Mode

Mode 8 Bits

Il valore iniziale dell'operazione si adegua automaticamente alla funzione selezionata: 0 se l'impostazione è su Nero (Black), oppure 255 o 20 se l'impostazione è Bianco (White)

  • Wire : Costruisce la linea (i vettori) in forma di Wire.
  • Bspline : Costruisce la linea (i vettori) in forma di Bspline.
  • Cloud : Crea i vettori dei punti nella nuvola di punti.
  • Point : Crea un punto per ogni pixel (vettoriale). (La procedura può essere lunga)
  • Nuance : Se Nuance è attivato i colori dei punti sono restituiti come se fosse una foto.

32 bit Mode

Mode 32 Bits

  • Photo : Il modo Photo è attivato automaticamente quando viene rilevata una immagine di 32 bit. (La procedura può essere lunga)
  • Plan : Il modo Plan consente di importare una immagine di 32 bit e ignorare lo sfondo del piano. Il colore predefinito dello sfondo del piano è il nero, per ignorare più colori regolare il Capping. Se è selezionato il bianco, ignora il bianco e lascia passare tutti gli altri colori. (La procedura può essere lunga)

File

Files

  • .pcd : Se è selezionato viene salvato un file originalName.bmp.pcd nella stessa directory del file (pcd v0.7).
  • .asc : Se è selezionato viene salvato un file originalName.bmp.asc nella stessa directory del file. Questo file può essere usato come una nuvola di punti (formato: X Y Z).

Capping (10mm)

Capping (10mm)

  • Slider : Definisce l'altezza della forma, l'altezza viene visualizzata nel riquadro del titolo.
  • 0 height  : Definisce l'altezza della forma, l'altezza viene visualizzata nel riquadro del titolo.
  • Raw mode 20 : Serve a regolare il numero di colori (livelli). La modalità predefinita è 0-19 (che costituisce un filtro e permette di ottenere maggiori dettagli, secondo la complessità dell'immagine). Quando viene selezionata questa opzione la modalità passa a 0-255 (tutta la scala di colori).
  •  : Questo checkBox abilita lo spinbox.
  • 0/2 Contour  : Questa casella numerica determina il colore che deve essere rimosso per ottenere il contorno dell'oggetto (ad esempio 0 per rimuovere lo sfondo).
  • Capping White : L'operazione di tappatura può essere eseguita su colori a scelta, bianco (impostazione predefinita) o nero. Il grado di tappatura si regola da 19 a 0 (o da 255 a 0) se la casella di controllo è impostata su White , oppure da 0 a 19 (o da 0 a 255) se la casella di controllo è impostata su Black.
  • 20 Capping  : Questa casella numerica determina il grado di Capping

Command

Command

  • File and launch : Apre il file immagine e avvia la conversione.
  • Help : Apre la pagina del wiki dentro il FreeCAD webBrowser
    • Visualizza la pagina Wiki nel browser di FreeCAD
    • Per modificare il parametro disponibile: vai su 'Strumenti → Modifica parametro ...'
    • __ Il passaggio globale su spinBox: __
    • User parameter:BaseApp/Preferences/Macros/FCMmacros/FCTexture → SingleStep
    • Regola il valore desiderato (1.0 per impostazione predefinita)
    • __ Per la ricerca se la macro è aggiornata: __
    • User parameter:BaseApp/Preferences/Macros/FCMmacros/FCTexture → switchVesionMacroSearch
    • Regola switchVesionMacroSearch su true (false per impostazione predefinita)
  • Quit : Esce dalla funzione.

Script

Le icone in formato .png e .svg

Macro_Texture.FCMacro

Scaricare la macro da Gist Macro FCTexture.FCMacro

Esempio

Le immagini sono state inclinate per esaltare l'effetto 3D.











Links

Link

La discussione sul forum per esprimere le proprie impressioni e contattare l'autore.

La FCCreaLoft Macro Loft che permette di automatizzare il "multi loft"

apply hair cell texture

How to handle pdf import properly and feasibly?

Revisioni

  • Ver 0.14c : 15-01-2021 include Gui.SendMsgToActiveView("ViewFit")
  • Ver 0.14b : 15-01-2021 Create Tab Coordinate and Tab Stretching for diminish the height of the macro and accepted in 15" screen
  • ver 0.14 : 06/01/2021 change the search path procedure and adding preference option: search the new macro upgraded
####new2
                pathFile      = os.path.dirname(SaveName) + "/"  #= C:/Provisoire400/
                formatFichier = os.path.splitext(SaveName)[1]    #= .png
                SaveName      = os.path.splitext(SaveName)[0]    #= /home/kubuntu/.FreeCAD/Macro/Texture_007_H #= C:/Provisoire400/image3D
                SaveNameformatFichier = SaveName + formatFichier #= C:/Provisoire400/image3D.png
                ####new2
                FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Macros/FCMmacros/FCTexture").SetString("Path",pathFile)
                ####new
  • ver 0.13b: 30/12/2020 add try for time.clock() and time.process_time() for Python 3xyz...
  • ver 0.13 : 17/04/2020 Layout and PySide2 Qt5
  • ver 0.12 : 04/08/2019 add spinbox button for height
  • ver 0.11 :03/07/2019 adapt to Python 3
  • ver 0.10 : 28/12/2016 add save point in .pcd, .asc display a points cloud, height form, contour
  • ver 0.9 : 12/12/2016 adding save file .asc for cloud point
  • ver 0.8 : 16/03/2016 adding progressBar
  • ver 0.7 : 03/09/2014 Delete "translate" forgotten and bug fix discovered by the passage of PyQt to Pyside !
  • ver 0.6 : 26/08/2014 Delete all "_translate"
  • ver 0.5 : 25/08/2014 Delete "_translate (" MainWindow "," Stretching X ", None)" that prevented the display of tooltip with PySide (Windows Vista)

ver 0.4 : 08/08/2014 PyQt4 PySide

ver 0.3 : 28/03/2014 :commentata la riga "# self.checkBox_5.setAccessibleName(_fromUtf8(""))" che causa un errore con la seguente versione di FreeCAD : 0.14.3343 (Git), Python version: 2.7.6, Qt version: 4.8.5