[RISOLTO] rifletti, duplica ed unisci

Domandate qui se non riuscite ad installare i filtri o gli script, oppure se avete problemi legati alla creazione e modifica dei filtri. Qui si pongono le domande più tecniche.
Rispondi
pedro3d
Principiante
Principiante
Messaggi:7
Iscritto il:gio 15 dic 2016, 15:29
[RISOLTO] rifletti, duplica ed unisci

Messaggio da pedro3d » gio 15 dic 2016, 15:46

Salve, nuovo di gimp, sto imparando!

chiedo se qualcuno cortesemente mi sa dire come posso automatizzare una sequenza di operazioni che dovrei fare.

praticamente avendo ad disposizione "mezza" blueprint la devo specchiare ed unire, facendola diventare una blueprint "intera"

raddoppiando solo la misura del lato inferiore ovviamente.

Immagine
Ultima modifica di pedro3d il mer 4 gen 2017, 11:25, modificato 1 volta in totale.

Avatar utente
Lazza
Amministratore
Amministratore
Messaggi:5254
Iscritto il:dom 5 set 2004, 13:06
Località:Italia
Contatta:

Re: rifletti, duplica ed unisci

Messaggio da Lazza » lun 19 dic 2016, 13:57

Al fine di inquadrare meglio la tua domanda: stai domandando se esiste un effetto specchio o stai domandando come creare uno script per Gimp che faccia determinate operazioni?

pedro3d
Principiante
Principiante
Messaggi:7
Iscritto il:gio 15 dic 2016, 15:29

Re: rifletti, duplica ed unisci

Messaggio da pedro3d » mar 20 dic 2016, 13:57

non ho trovato un comando che specchia e raddoppia la foto, quindi presumo che uno script si può ovviare a questo.
essendo un neofita, non so se esiste un comando che faccia quello che mi serve quindi chiedo suggerimenti, dato per certo che questo comando non esiste si passa alla fase script

se qualcuno cortesemente mi sa dire qualcosa sarebbe d'aiuto.

grazie

Avatar utente
fabri66
Amministratore
Amministratore
Messaggi:1192
Iscritto il:gio 13 nov 2014, 23:12

Re: rifletti, duplica ed unisci

Messaggio da fabri66 » ven 23 dic 2016, 16:51

Pedro3D ha scritto:non ho trovato un comando che specchia e raddoppia la foto
Ciao Pedro3D e benvenuto nel forum.

Prima duplichi il livello che vuoi riflettere, poi il comando lo trovi in STRUMENTI - TRASFORMAZIONE - RIFLETTI.
L'icona del comando lo trovi anche nel pannello dei comandi, mentre nel pannello delle opzioni imposti se riflettere orizzontalmente o vericalmente.
Dopo aver lanciato il comando, il livello attivo verrà specchiato e quindi potrai affiancarlo all'altro per concludere l'operazione da te richiesta.
Se necessario, prima di affiancare le due immagini specchiate dovrai raddoppiare la superficie dell'immagine con il comando IMMAGINE - DIMENSIONE SUPERFICIE (x raddoppiare la fotografia).
Al limite, prima raddoppi la foto, poi duplichi il livello ed infine specchi.

Scusami se non inserisco screenshot ma al momento riesco solo a risponderti velocemente e a parole.

Buone Feste. Ciao

Fabrizio
Ci trovi sul nuovo Forum di Gimp Italia

Immagine

"Io ne ho viste cose che voi umani non potreste immaginarvi" (dal film Blade Runner)

Avatar utente
Lazza
Amministratore
Amministratore
Messaggi:5254
Iscritto il:dom 5 set 2004, 13:06
Località:Italia
Contatta:

Re: rifletti, duplica ed unisci

Messaggio da Lazza » sab 31 dic 2016, 0:12

Credo che Pedro3D volesse automatizzare il tutto. :)

Se si tratta soltanto di sdoppiare l'immagine specchiata, dovrebbe essere abbastanza semplice con 3-4 righe di scripting usando il motore script-fu di GIMP. Se invece c'è da allineare l'immagine in base a una linea verticale che non è il bordo, potrebbe diventare un pochino più complicato. :roll:

pedro3d
Principiante
Principiante
Messaggi:7
Iscritto il:gio 15 dic 2016, 15:29

Re: rifletti, duplica ed unisci

Messaggio da pedro3d » mar 3 gen 2017, 12:03

grazie a tutti per l'aiuto,

in effetti
Lazza ha scritto:volesse automatizzare il tutto
è proprio il mio obiettivo, in quanto lo devo fare spesso.

ricapitolando devo:

1) duplicare il livello
2) raddoppiare la superficie dell'immagine con il comando IMMAGINE - DIMENSIONE SUPERFICIE
3) riflettere, con il comando STRUMENTI - TRASFORMAZIONE - RIFLETTI
4) spostare il livello specchiato
5) salvare il tutto

e fino qui ci siamo, grazie fabri66 e Lazza per le dritte.

Ora il problema è che non so assolutamente niente di scripting e motore script-fu, qualcuno mi aiuta a compilare uno script?

Avatar utente
fabri66
Amministratore
Amministratore
Messaggi:1192
Iscritto il:gio 13 nov 2014, 23:12

Re: rifletti, duplica ed unisci

Messaggio da fabri66 » mar 3 gen 2017, 18:25

pedro3d ha scritto:e fino qui ci siamo, grazie fabri66 e Lazza per le dritte.
Prego, ci mancherebbe ... purtroppo però io mi devo fermare qui perchè anche per me gli script e simili sono off-limits :( (in compenso adoro quelli già pronti e fatti bene :mrgreen: )
Buon Anno pedro3d ! Ciao
Fabrizio :D
Ci trovi sul nuovo Forum di Gimp Italia

Immagine

"Io ne ho viste cose che voi umani non potreste immaginarvi" (dal film Blade Runner)

Avatar utente
Lazza
Amministratore
Amministratore
Messaggi:5254
Iscritto il:dom 5 set 2004, 13:06
Località:Italia
Contatta:

Re: rifletti, duplica ed unisci

Messaggio da Lazza » mar 3 gen 2017, 22:44

pedro3d ha scritto:Ora il problema è che non so assolutamente niente di scripting e motore script-fu, qualcuno mi aiuta a compilare uno script?
Nemmeno io, e francamente non ho voglia di mettermici perché è un linguaggio funzionale abbastanza poco familiare a quello che sono abituato ad usare di solito. :roll:

Però ho visto che Python Fu è abbastanza semplice e ha un tutorial carino. Pertanto ho fatto questo che dovrebbe rispondere alle tue esigenze (è molto basilare, lo so... ma si può migliorare aggiungendoci qualche parametro magari):

Codice: Seleziona tutto

#!/usr/bin/env python

__author__ = "Andrea Lazzarotto"
__copyright__ = "Copyright 2016 Andrea Lazzarotto"
__license__ = "GPLv3"
__version__ = "1.0"
__email__ = "andrea.lazzarotto@gmail.com"
__status__ = "Beta"

import math
from gimpfu import *

def python_mirror(timg, tdrawable):
    width = tdrawable.width
    height = tdrawable.height

    timg.undo_group_start()
    layer_one = timg.layers[0]
    layer_two = layer_one.copy()
    layer_two.name = "copy"
    timg.add_layer(layer_two, 0)

    pdb.gimp_item_transform_flip_simple(layer_two, 0, TRUE, 0.0)
    pdb.gimp_layer_translate(layer_two, width, 0)
    pdb.gimp_image_resize_to_layers(timg)

    timg.flatten()
    timg.undo_group_end()

register(
        "python_fu_lazza_mirror",
        "Mirror the specified layer",
        "Mirror the specified layer",
        __author__,
        __copyright__,
        "2016+",
        "<Image>/Filters/Map/Lazza Mirror",
        "RGB*, GRAY*",
        [],
        [],
        python_mirror)

main()
Istruzioni per chi ha Gimp con Python attivo (di default su Linux e su macOS per chi usa le build di LisaNet, non ho idea se sia di default su Windows ma si può aggiungere):
  • Salvare il codice in un file chiamato mirror.py
  • Su Linux e macOS è necessario dargli i permessi di esecuzione cliccando su Proprietà o col comando chmod +x mirror.py
  • Mettere il file nella cartella dei plug-in oppure in una cartella a piacere che va aggiunta nelle preferenze di GIMP
  • Chiudere e riaprire il programma
Per l'uso non c'è molto da dire, va sotto a Filtri » Mappa » Lazza Mirror. :P

Immagine

Risultato:

Immagine

PS: stavo dimenticando... Esiste uno script nella raccolta FX-Foundry che dovrebbe fare la stessa cosa con alcune opzioni in più, eventualmente prova a vedere se funziona ancora con le ultime versioni di Gimp.

pedro3d
Principiante
Principiante
Messaggi:7
Iscritto il:gio 15 dic 2016, 15:29

Re: rifletti, duplica ed unisci

Messaggio da pedro3d » mer 4 gen 2017, 9:47

grazie mille per l'aiuto, ora provo a mettere in pratica!

pedro3d
Principiante
Principiante
Messaggi:7
Iscritto il:gio 15 dic 2016, 15:29

Re: rifletti, duplica ed unisci

Messaggio da pedro3d » mer 4 gen 2017, 11:21

Lazza ha scritto:ho fatto questo che dovrebbe rispondere alle tue esigenze
funziona perfettamente!

Nella versione win basta copiare il file mirror.py nella cartella dei plugin e riavviare.
il comando compare sotto a Filtri » Mappa » Lazza Mirror.

grazie mille.

Rispondi