summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /media-plugins/gimp-resynthesizer
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'media-plugins/gimp-resynthesizer')
-rw-r--r--media-plugins/gimp-resynthesizer/Manifest1
-rw-r--r--media-plugins/gimp-resynthesizer/files/gimp-resynthesizer-0.16-makefile.patch27
-rw-r--r--media-plugins/gimp-resynthesizer/files/smart-remove.scm111
-rw-r--r--media-plugins/gimp-resynthesizer/gimp-resynthesizer-0.16.ebuild48
-rw-r--r--media-plugins/gimp-resynthesizer/metadata.xml7
5 files changed, 194 insertions, 0 deletions
diff --git a/media-plugins/gimp-resynthesizer/Manifest b/media-plugins/gimp-resynthesizer/Manifest
new file mode 100644
index 000000000000..d4637bf9bd7a
--- /dev/null
+++ b/media-plugins/gimp-resynthesizer/Manifest
@@ -0,0 +1 @@
+DIST resynthesizer-0.16.tar.gz 18241 SHA256 dd24ec89f3a36f867b733c6a5c1d193b6d603251bd6553ac54b573fd655020cd
diff --git a/media-plugins/gimp-resynthesizer/files/gimp-resynthesizer-0.16-makefile.patch b/media-plugins/gimp-resynthesizer/files/gimp-resynthesizer-0.16-makefile.patch
new file mode 100644
index 000000000000..04d25511e61c
--- /dev/null
+++ b/media-plugins/gimp-resynthesizer/files/gimp-resynthesizer-0.16-makefile.patch
@@ -0,0 +1,27 @@
+--- Makefile-orig 2010-03-28 00:42:45.759669796 +0300
++++ Makefile 2010-03-28 00:43:33.024936557 +0300
+@@ -1,15 +1,8 @@
+-CC = g++
+-
+ GIMPTOOL = gimptool-2.0
+
+ GIMP_LDFLAGS=`$(GIMPTOOL) --libs`
+ GIMP_CFLAGS=`$(GIMPTOOL) --cflags`
+
+-CFLAGS=$(GIMP_CFLAGS) -O3 -fno-common -ffast-math -frename-registers -fomit-frame-pointer
+-
+-LDFLAGS=$(GIMP_LDFLAGS) -lm
+-
+-
+ all: resynth
+ @echo
+ @echo 'Now type "make install" to install resynthesizer'
+@@ -30,7 +23,7 @@
+ @echo
+
+ resynth: resynth.cc
+- $(CC) $(CFLAGS) -o $@ resynth.cc $(LDFLAGS)
++ $(CXX) $(CFLAGS) $(GIMP_CFLAGS) $(LDFLAGS) -o $@ resynth.cc $(GIMP_LDFLAGS) -lm
+
+ clean:
+ -rm -f *~ *.o core resynth
diff --git a/media-plugins/gimp-resynthesizer/files/smart-remove.scm b/media-plugins/gimp-resynthesizer/files/smart-remove.scm
new file mode 100644
index 000000000000..7324ebd56741
--- /dev/null
+++ b/media-plugins/gimp-resynthesizer/files/smart-remove.scm
@@ -0,0 +1,111 @@
+
+; Smart Remove
+
+; Smart selection eraser.
+; Requires resynthesizer plug-in.
+; Paul Harrison (pfh@logarithmic.net)
+
+; Versions
+; lloyd konneker lkk 3/29/2009 Fix passing workLayerID to plugin.
+; Other non-functional changes: comments, error checking, menu item, blurb, license
+;
+
+; License:
+;
+; This program is free software; you can redistribute it and/or modify
+; it under the terms of the GNU General Public License as published by
+; the Free Software Foundation; either version 2 of the License, or
+; (at your option) any later version.
+;
+; This program is distributed in the hope that it will be useful,
+; but WITHOUT ANY WARRANTY; without even the implied warranty of
+; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+; GNU General Public License for more details.
+;
+; The GNU Public License is available at
+; http://www.gnu.org/copyleft/gpl.html
+
+; lkk comment: creates stencil selection in a temp dupe image to pass as source drawable to plugin
+
+
+(define (script-fu-smart-remove img layer corpus-border)
+ (cond
+ ((= 0 (car (gimp-selection-bounds img)))
+ (gimp-message "To use this script-fu, first select the region you wish to remove.")
+ )
+ (#t (let*
+ (
+ (dupe (car (gimp-image-duplicate img)))
+ (channel (car (gimp-selection-save dupe)))
+ (workLayerID -1) ; lkk
+ )
+
+ ; lkk flatten (so stencil gets everything visible) and to activate a layer in dupe
+ ; (gimp-message-set-handler 1) ; debug messages to console
+ (gimp-image-flatten dupe) ; lkk !!! flatten, activates layer, but deletes alpha
+ (set! workLayerID (car (gimp-image-get-active-layer dupe)))
+ (cond ((= -1 workLayerID)
+ (gimp-message "Failed get active layer")
+ ) )
+ ; lkk plugin requires equal count of channels, target and source. Plugin should be changed to relax this reqt.
+ (cond ((= 1 (car (gimp-drawable-has-alpha layer)))
+ ;debug (gimp-message "Adding alpha")
+ (if (not (car (gimp-layer-add-alpha workLayerID))) (gimp-message "Failed add alpha") )
+ ) )
+
+
+ ; lkk comment: grow selection, invert, save to channel2, cut a hole size of orig selection
+ ; lkk in the grown selection in channel2, select channel2, un invert
+ (gimp-selection-grow dupe corpus-border)
+ (gimp-selection-invert dupe)
+ (let*
+ (
+ (old-background (car (gimp-context-get-background)))
+ (channel2 (car (gimp-selection-save dupe)))
+ )
+
+ (gimp-selection-load channel)
+ (gimp-context-set-background '(255 255 255))
+ (if (not (car (gimp-edit-clear channel2))) (gimp-message "Failed edit clear") )
+ (gimp-context-set-background old-background)
+ (gimp-selection-load channel2)
+ )
+
+ (gimp-selection-invert dupe)
+ ; lkk comment: crop the dupe to size of stencil to save memory
+ (let*
+ (
+ (bounds (gimp-selection-bounds dupe))
+ (x1 (nth 1 bounds))
+ (y1 (nth 2 bounds))
+ (x2 (nth 3 bounds))
+ (y2 (nth 4 bounds))
+ )
+
+ (gimp-image-crop dupe (- x2 x1) (- y2 y1) x1 y1)
+ )
+
+ (gimp-selection-invert dupe) ; lkk !!! plugin requires inverted selection
+ ;(gimp-display-new dupe) ; debug to see the stencil as passed to plugin
+ ;(gimp-displays-flush) ; debug
+
+ ; lkk originally 7th param was layer (the in layer), which only SEEMED to work. Should be the stencil.
+ (plug-in-resynthesizer 1 img layer 0 0 1 workLayerID -1 -1 0.0 0.117 16 500)
+
+ (gimp-image-delete dupe)
+ (gimp-displays-flush)
+) ) ))
+
+(script-fu-register "script-fu-smart-remove"
+ "<Image>/Filters/Enhance/Heal selection..."
+ "Extend surrounding texture to cover the selection. Works best with homogenous, not regular surroundings. \
+Requires separate resynthesizer plug-in."
+ "Paul Harrison (pfh@logarithmic.net)"
+ "Copyright 2000 Paul Harrison, 2009 Lloyd Konneker"
+ "13/9/2000"
+ "RGB* GRAY*"
+ SF-IMAGE "Input Image" 0
+ SF-DRAWABLE "Input Layer" 0
+ SF-ADJUSTMENT "Radius to take texture from" '(50 7 1000 1.0 1.0 0 1)
+)
+
diff --git a/media-plugins/gimp-resynthesizer/gimp-resynthesizer-0.16.ebuild b/media-plugins/gimp-resynthesizer/gimp-resynthesizer-0.16.ebuild
new file mode 100644
index 000000000000..59361419eabf
--- /dev/null
+++ b/media-plugins/gimp-resynthesizer/gimp-resynthesizer-0.16.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+
+inherit eutils toolchain-funcs
+
+MY_PN="${PN#gimp-}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="GIMP plug-ing for texture synthesis"
+HOMEPAGE="http://www.logarithmic.net/pfh/resynthesizer"
+SRC_URI="http://www.logarithmic.net/pfh-files/${MY_PN}/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="media-gfx/gimp"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-makefile.patch"
+ cp "${FILESDIR}/smart-remove.scm" "${S}" || die
+
+ tc-export CXX
+}
+
+src_install() {
+ exeinto $(gimptool-2.0 --gimpplugindir)/plug-ins
+ doexe resynth || die
+
+ insinto $(gimptool-2.0 --gimpdatadir)/scripts
+ doins smart-enlarge.scm smart-remove.scm || die
+
+ dodoc README || die
+}
+
+pkg_postinst() {
+ elog "The Resynthesizer plugin is accessible from the menu:"
+ elog "* Filters -> Map -> Resynthesize"
+ elog "* Filters -> Enhance -> Smart enlarge/sharpen"
+ elog "* Filters -> Enhance -> Heal selection"
+}
diff --git a/media-plugins/gimp-resynthesizer/metadata.xml b/media-plugins/gimp-resynthesizer/metadata.xml
new file mode 100644
index 000000000000..91f4e72fb544
--- /dev/null
+++ b/media-plugins/gimp-resynthesizer/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>