]> granicus.if.org Git - graphviz/commitdiff
working code again
authorellson <devnull@localhost>
Mon, 6 Oct 2008 20:50:13 +0000 (20:50 +0000)
committerellson <devnull@localhost>
Mon, 6 Oct 2008 20:50:13 +0000 (20:50 +0000)
lib/inkpot/Makefile.am
lib/inkpot/inkpot_lib.tcl
lib/inkpot/inkpot_lib_brewer.tcl
lib/inkpot/inkpot_lib_procs.tcl

index a257fa2b26bb0141e8352323897dbf7dea67bd59..e19ac42d8127cd0be771ce755d857d47b07daff5 100644 (file)
@@ -4,17 +4,18 @@
 pdfdir = $(pkgdatadir)/doc/pdf
 pkgconfigdir = $(libdir)/pkgconfig
 
-#pkginclude_HEADERS = inkpot.h
-#lib_LTLIBRARIES = libinkpot.la
-#pkgconfig_DATA = libinkpot.pc
-#bin_PROGRAMS = inkpot
-#
-#noinst_HEADERS = inkpot_scheme.h inkpot_xlate.h inkpot_value.h \
-#      inkpot_lib_define.h inkpot_lib_value.h inkpot_lib_scheme.h
-#noinst_LTLIBRARIES = libinkpot_C.la
-#
-#man_MANS = inkpot.3 inkpot.1
-#pdf_DATA = inkpot.3.pdf inkpot.1.pdf
+
+pkginclude_HEADERS = inkpot.h
+lib_LTLIBRARIES = libinkpot.la
+pkgconfig_DATA = libinkpot.pc
+bin_PROGRAMS = inkpot
+
+noinst_HEADERS = inkpot_scheme.h inkpot_xlate.h inkpot_value.h \
+       inkpot_lib_define.h inkpot_lib_value.h inkpot_lib_scheme.h
+noinst_LTLIBRARIES = libinkpot_C.la
+
+man_MANS = inkpot.3 inkpot.1
+pdf_DATA = inkpot.3.pdf inkpot.1.pdf
 
 inkpot_SOURCES = inkpot.c
 inkpot_LDADD = $(builddir)/libinkpot.la
@@ -24,11 +25,15 @@ libinkpot_C_la_LIBADD = $(top_builddir)/lib/rbtree/librbtree_C.la
 
 libinkpot_la_SOURCES = $(libinkpot_C_la_SOURCES)
 libinkpot_la_LIBADD = $(libinkpot_C_la_LIBADD)
-libinkpot_la_LDFLAGS = -version-info $(VERSION_INFO) -no-undefined
+libinkpot_la_LDFLAGS = -version-info $(VERSION_INFO) -no-undefined 
+
+inkpot_scheme.o inkpot_scheme.lo: inkpot_lib_define.h inkpot_lib_scheme.h 
+
+inkpot_value.o inkpot_value.lo: inkpot_lib_define.h inkpot_lib_value.h 
 
-inkpot_lib_value.h: $(builddir)/inkpot_lib_define.h
+inkpot_lib_value.h: inkpot_lib_define.h
 
-inkpot_lib_scheme.h: $(builddir)/inkpot_lib_define.h
+inkpot_lib_scheme.h: inkpot_lib_define.h
 
 inkpot_lib_define.h: inkpot_lib.tcl inkpot_lib_procs.tcl \
                        $(builddir)/inkpot_lib_tk.dat \
index 5d629e78feb0c13cfb3e026f53024bffd3e8ded3..b8f5b4c44a54d33b913b8f3881b3ca27e8caff92 100755 (executable)
@@ -212,56 +212,54 @@ foreach {scheme} [lsort -ascii [array names ALL_SCHEMES]] {
 tab_finalize "};\n"
 
 
-if {0} {
-foreach {m2} [lsort -dictionary [mapm2 CV]] {
-    foreach {value schemes} $m2 {break}
-    foreach {m1} [map2m1 CV $value] {
-        lappend ALL_ALIASES(m1) $m2
-    }
-}
+foreach {color} [lsort -ascii [map1 CV]] {
+    set altset [lsort -dictionary [map1m2 CV $color]]
+    lappend ALL_ALTSETS($altset) $color
 }
-
-
+       
 # generate TAB_ALTS
 set SZT_ALTS 0
 tab_initialize $f {set first_idx} {set aliases} \
        "inkpot_name_t TAB_ALTS\[SZT_ALTS\] = {"
-#foreach {m1} [lsort -ascii [array names ALL_ALIASES]] {
-#    foreach {color schemes} $m1 {break}
-foreach {r_set} [map3 CV] {
-    set scheme_bits 0
-    foreach {scheme} $schemes {
-        foreach {scheme_idx scheme_bit} $ALL_SCHEMES_coded($scheme) {break}
-        set scheme_bits [expr $scheme_bits | $scheme_bit]
-    }
-    set m2s [map3m2 CV $r_set]
-#    set m2s $ALL_ALIASES($m1)
-    set cnt [llength $m2s]
+foreach {altset} [lsort -dictionary [array names ALL_ALTSETS]] {
+    set aliases [lsort -ascii -unique $ALL_ALTSETS($altset)]
+    set cnt [llength $altset]
     switch $cnt {
         0 {
-            puts stderr "shouldn't happen - zero alts: $color"
+            puts stderr "shouldn't happen - has to be at least one alt in an altset"
         }
         1 {
-           foreach {m2} $m2s {break}
-            foreach {value schemeset} $m2 {break}
-            set ALL_ALTSETS_coded($color) "$ALL_VALUES_coded($value),[format {0x%x} $scheme_bits]"
+           foreach {value_schemes} $altset {break}
+           foreach {value schemes} $value_schemes {break}
+           set scheme_bits 0
+           foreach {scheme} $schemes {
+                foreach {scheme_idx scheme_bit} $ALL_SCHEMES_coded($scheme) {break}
+                set scheme_bits [expr $scheme_bits | $scheme_bit]
+            }
+           foreach {color} $aliases {
+                set ALL_ALTS_coded($color) "$ALL_VALUES_coded($value),[format {0x%x} $scheme_bits]"
+           }
             # don't need entry in TAB_ALTS for this case
         }
         default {
             set first_idx $SZT_ALTS
-           foreach {m2} $m2s {
-               foreach {value schemeset} $m2 {break}
+           foreach {value_schemes} $altset {
+               foreach {value schemes} $value_schemes {break}
+               set scheme_bits 0
+               foreach {scheme} $schemes {
+                    foreach {scheme_idx scheme_bit} $ALL_SCHEMES_coded($scheme) {break}
+                    set scheme_bits [expr $scheme_bits | $scheme_bit]
+                }
                 tab_elem "{[incr cnt -1],$ALL_VALUES_coded($value),[format {0x%x} $scheme_bits]},"
                 incr SZT_ALTS
-               set aliases [mapm21 CV $m2]
                foreach {color} $aliases {
-                    set ALL_ALTSETS_coded($color) "$first_idx,0"
+                    set ALL_ALTS_coded($color) "$first_idx,0"
                 }
            }
         }
     }
     tab_row
-#}
+}
 tab_finalize "};\n"
 
     
@@ -270,7 +268,7 @@ set SZT_NAMES 0
 tab_initialize $f {set SZT_NAMES} {set color} \
        "inkpot_name_t TAB_NAMES\[SZT_NAMES\] = {"
 foreach {color} [map1 CV] {
-    tab_elem "{$ALL_COLOR_STRINGS_coded($color),$ALL_ALTSETS_coded($color)},"
+    tab_elem "{$ALL_COLOR_STRINGS_coded($color),$ALL_ALTS_coded($color)},"
     tab_row
     set ALL_NAMES_coded($color) $SZT_NAMES
     incr SZT_NAMES
index 140c3764206014553e7b8c72d5247d6aee1b71e2..084f3e5e66830e2286038bb00117e5b766fe07b1 100755 (executable)
@@ -49,10 +49,13 @@ if {1} {
         if {[info exists COLORS($nam_ixn)]} {
                 foreach {rr gg bb} $COLORS($nam_ixn) {break}
                if {$r != $rr || $g != $gg || $b != $bb} {
-                       puts stderr "\"$nam_ixn\" is not unique and rgb doesn't match: $r $g $b != $rr $gg $bb"
-                       puts stderr $rec
+                       puts stderr ""
+                       puts stderr "\"$nam $ixa\" is not unique and rgb doesn't match: $r $g $b != $rr $gg $bb"
+                       puts stderr "In record: [string trim $rec :]"
+                       puts stderr "Retaining first value found, discarding second."
+                       puts stderr ""
                } {
-                       #                   puts "$nam_ixn is not unique"     
+                       #                   puts "$nam ixa is not unique"     
                }
        }
        set COLORS($nam_ixn) [list $r $g $b]
index 67ce20bf140a3162308c23f5faba6d903ff8123b..e3b9c88cd59b81313c081275d3c79fd3d90a8ea2 100755 (executable)
@@ -114,13 +114,10 @@ proc print_first {a} {
 # 
 # map1 {M}             : get {x...}
 # map2 {M}             : get {y...}
-# map3 {M}             : get {r...}
 # mapm1 {M}            : get {{x {r...}}...}
 # mapm2 {M}            : get {{y {r...}}...}
 # map1m2 {M x}         : from x get {y {r...}}
 # map2m1 {M y}         : from y get {x {r...}}
-# map3m1 {M r_set}     : from r_set get {{x {r...}}...}
-# map3m2 {M r_set}     : from r_set get {{y {r...}}...}
 # mapm21 {M m2}                : from m2 get {x...}
 # mapm12 {M m1}                : from m1 get {y...}
 # map12 {M x}          : from x get {y...}
@@ -134,18 +131,10 @@ proc map {M x y r} {
     if {[info exists MAP_m2_1]} {
            puts stderr "flushing crunched MAP data for new values"
             upvar #0 MAP_[set M]_m1_2 MAP_m1_2
-            upvar #0 MAP_[set M]_m2_3 MAP_m2_3
-            upvar #0 MAP_[set M]_m1_3 MAP_m1_3
-            upvar #0 MAP_[set M]_3_m1 MAP_3_m1
-            upvar #0 MAP_[set M]_3_m2 MAP_3_m2
             upvar #0 MAP_[set M]_2_m1 MAP_2_m1
             upvar #0 MAP_[set M]_1_m2 MAP_1_m2
            array unset MAP_m2_1
            array unset MAP_m1_2
-            array unset MAP_m2_3
-            array unset MAP_m1_3
-            array unset MAP_3_m1
-            array unset MAP_3_m2
             array unset MAP_2_m1
             array unset MAP_1_m2
     }
@@ -161,13 +150,10 @@ proc mapc {M map} {
                puts stderr "MAP_[set M]_12_3 doesn't exist.  Use the "map" proc to create and populate."       
            }
        }
-        m2_1 - m1_2 - m2_3 - m1_3 {
+        m2_1 - m1_2 {
             upvar #0 MAP_[set M]_12_3 MAP_12_3
             upvar #0 MAP_[set M]_m2_1 MAP_m2_1
             upvar #0 MAP_[set M]_m1_2 MAP_m1_2
-            upvar #0 MAP_[set M]_m2_3 MAP_m2_3
-            upvar #0 MAP_[set M]_m1_3 MAP_m1_3
-            #obtain sorted r_set's and use them as keys to the map
             foreach {xy} [array names MAP_12_3] {
                 foreach {x y} $xy {break}
                 set r_set [lsort -unique $MAP_12_3($xy)]
@@ -175,15 +161,12 @@ proc mapc {M map} {
                 set m2 [list $y $r_set]
                 lappend MAP_m2_1($m2) $x
                 lappend MAP_m1_2($m1) $y
-                lappend MAP_m2_3($m2) $r_set
-                lappend MAP_m1_3($m1) $r_set
             }
         }
         1_m2 {
             upvar #0 MAP_[set M]_m2_1 MAP_m2_1
             upvar #0 MAP_[set M]_1_m2 MAP_1_m2
            if {! [info exists MAP_m2_1]} {mapc $M m2_1}
-            #set up for finding m2 from x, and for listing x
             foreach {m2} [lsort [array names MAP_m2_1]] {
                 foreach {x} $MAP_m2_1($m2) {
                     lappend MAP_1_m2($x) $m2
@@ -195,35 +178,12 @@ proc mapc {M map} {
             upvar #0 MAP_[set M]_2_m1 MAP_2_m1
            if {! [info exists MAP_m2_1]} {mapc $M m2_1}
            if {! [info exists MAP_m1_2]} {mapc $M m1_2}
-            #set up for finding m1 from y, and for listing y
             foreach {m1} [lsort [array names MAP_m1_2]] {
                 foreach {y} $MAP_m1_2($m1) {
                     lappend MAP_2_m1($y) $m1
                 }
             }
         }
-        3_m2 {
-            upvar #0 MAP_[set M]_m2_3 MAP_m2_3
-            upvar #0 MAP_[set M]_3_m2 MAP_3_m2
-           if {! [info exists MAP_m2_3]} {mapc $M m2_3}
-            #set up for finding m2 from r_sets, and for listing r_sets
-            foreach {m2} [lsort [array names MAP_m2_3]] {
-               foreach {r_set} [lsort -unique $MAP_m2_3($m2)] {
-                   lappend MAP_3_m2($r_set) $m2
-                }
-            }
-        }
-        3_m1 {
-            upvar #0 MAP_[set M]_m1_3 MAP_m1_3
-            upvar #0 MAP_[set M]_3_m1 MAP_3_m1
-           if {! [info exists MAP_m1_3]} {mapc $M m1_3}
-            #set up for finding m1 from r_sets, and for listing r_sets
-            foreach {m1} [lsort [array names MAP_m1_3]] {
-               foreach {r_set} [lsort -unique $MAP_m1_3($m1)] {
-                   lappend MAP_3_m1($r_set) $m1
-                }
-            }
-        }
     }
 }
     
@@ -237,12 +197,6 @@ proc map2 {M} { ;#get {y...}
     if {! [info exists MAP_2_m1]} {mapc $M 2_m1}
     lsort [array names MAP_2_m1]
 }
-proc map3 {M} { ;#get {r...}
-    # the set of r is the same in both MAP_3_m1 and MAP_3_m2, so just use one
-    upvar #0 MAP_[set M]_3_m1 MAP_3_m1
-    if {! [info exists MAP_3_m1]} {mapc $M 3_m1}
-    lsort [array names MAP_3_m1]
-}
 proc mapm1 {M} { ;#get {{x {r...}}...}
     upvar #0 MAP_[set M]_m1_2 MAP_m1_2
     if {! [info exists MAP_m1_2]} {mapc $M m1_2}
@@ -263,16 +217,6 @@ proc map2m1 {M y} { ;#from y get {x {r...}}
     if {! [info exists MAP_2_m1]} {mapc $M 2_m1}
     set MAP_2_m1($y)
 }
-proc map3m1 {M r_set} { ;#from r_set get {{x {r...}}...}
-    upvar #0 MAP_[set M]_3_m1 MAP_3_m1
-    if {! [info exists MAP_3_m1]} {mapc $M 3_m1}
-    set MAP_3_m1($r_set)
-}
-proc map3m2 {M r_set} { ;#from r_set get {{y {r...}}...}
-    upvar #0 MAP_[set M]_3_m2 MAP_3_m2
-    if {! [info exists MAP_3_m2]} {mapc $M 3_m2}
-    set MAP_3_m2($r_set)
-}
 proc mapm21 {M m2} { ;#from m2 get {x...}
     upvar #0 MAP_[set M]_m2_1 MAP_m2_1
     if {! [info exists MAP_m2_1]} {mapc $M m2_1}
@@ -333,25 +277,15 @@ if {0} {  ;# for testing
        puts ""
        map_debug CV
        puts ""
-puts "m1_3 : [array get MAP_CV_m1_3]"
-puts "3_m1 : [array get MAP_CV_3_m1]"
 
        puts "map1 CV                : [map1 CV]"
        puts "              expected : black green grey0 lime noir vert"
        puts "map2 CV                : [map2 CV]"
                puts "              expected : 0 1 2"
-       puts "map3 CV                : [map3 CV]"
-               puts "              expected : french svg {svg tk x11} {tk x11}"
        puts "map1m2 CV green        : [map1m2 CV green]"
        puts "              expected : {1 {tk x11}} {2 svg}"
        puts "map2m1 CV 2            : [map2m1 CV 2]"
        puts "              expected : {green svg}"
-       puts "map3m1 CV {svg tk x11} : [map3m1 CV {svg tk x11}]"
-       puts "              expected : {black {svg tk x11}} {grey0 {svg tk x11}} {lime {svg tk x11}}"
-       puts "map3m2 CV {svg tk x11} : [map3m2 CV {svg tk x11}]"
-               puts "              expected : {0 {svg tk x11}} {1 {svg tk x11}}"
-       puts "map3m2 CV {svg}        : [map3m2 CV {svg}]"
-               puts "              expected : {2 {svg}}"
        puts "map12 CV green         : [map12 CV green]"
        puts "              expected : 1 2"
        puts "map21 CV 1             : [map21 CV 1]"