aboutsummaryrefslogtreecommitdiff
path: root/library
diff options
context:
space:
mode:
authorlecoanet2003-03-28 17:34:45 +0000
committerlecoanet2003-03-28 17:34:45 +0000
commit7a103bee4cda4532e237522e72f6a7d7e81e6839 (patch)
tree0df1594aeee61a62b2c51e552329d684c72a1ea0 /library
parent38e65889a599cfdfb3ae37ed82d24e2d1805d816 (diff)
downloadtkzinc-7a103bee4cda4532e237522e72f6a7d7e81e6839.zip
tkzinc-7a103bee4cda4532e237522e72f6a7d7e81e6839.tar.gz
tkzinc-7a103bee4cda4532e237522e72f6a7d7e81e6839.tar.bz2
tkzinc-7a103bee4cda4532e237522e72f6a7d7e81e6839.tar.xz
Ajout de zincLogo
Diffstat (limited to 'library')
-rw-r--r--library/pkgIndex.tcl3
-rw-r--r--library/zincLogo.tcl98
-rw-r--r--library/zincText.tcl4
3 files changed, 102 insertions, 3 deletions
diff --git a/library/pkgIndex.tcl b/library/pkgIndex.tcl
index 12c1a66..b3bb6c8 100644
--- a/library/pkgIndex.tcl
+++ b/library/pkgIndex.tcl
@@ -8,4 +8,5 @@
# script is sourced, the variable $dir must contain the
# full path name of this file's directory.
-package ifneeded ZincText 1.0 [list source [file join $dir zincText.tcl]]
+package ifneeded zincText 1.0 [list source [file join $dir zincText.tcl]]
+package ifneeded zincLogo 1.0 [list source [file join $dir zincLogo.tcl]]
diff --git a/library/zincLogo.tcl b/library/zincLogo.tcl
new file mode 100644
index 0000000..9099311
--- /dev/null
+++ b/library/zincLogo.tcl
@@ -0,0 +1,98 @@
+#---------------------------------------------------------------
+# File : LogoZinc.pm
+#
+# Copyright (C) 2001-2002
+# Centre d'Études de la Navigation Aérienne
+# Authors: Vinot Jean-Luc <vinot@cena.fr>
+# $Id$
+#---------------------------------------------------------------
+
+package provide zincLogo 1.0
+
+namespace eval ::zincLogo:: {
+
+ set letters(coords) {
+ {0 0} {106 0} {106 58} {122 41} {156 41} {131 69}
+ {153 99} {203 41} {155 41} {155 0} {218 0} {240 0 'c'}
+ {252 17 'c'} {252 34} {252 40 'c'} {249 50 'c'} {244 56}
+ {202 105} {246 105} {246 87} {246 60 'c'} {271 37 'c'} {297 37}
+ {323 37 'c'} {342 57 'c'} {344 68} {347 64 'c'} {350 60'c'}
+ {353 56} {363 46 'c'} {375 37 'c'} {395 37} {395 79} {393 79}
+ {385 79 'c'} {379 86 'c'} {379 93} {379 100 'c'} {385 107 'c'}
+ {393 107} {409 107} {409 148} {397 148} {378 148 'c'} {364 144 'c'}
+ {354 133} {346 124} {346 148} {305 148} {305 87} {305 83 'c'}
+ {301 79 'c'} {297 79} {293 79 'c'} {289 83 'c'} {289 87} {289 150}
+ {251 150} {251 130} {251 126 'c'} {247 122 'c'} {243 122} {239 122 'c'}
+ {235 126 'c'} {235 130} {235 150} {176 150} {154 150,'c'} {146 131,'c'}
+ {146 114} {148 105} {120 105} {104 81} {104 105} {74 105} {74 41} {52 41}
+ {52 105} {20 105} {20 41} {0 41}}
+ set letters(lineWidth) 3
+ set letters(lineColor) {\#000000;70}
+ set letters(fillColor) {=axial 270|\#ffffff;100 0 28|\#66848c;100 96|\#7192aa;100 100}
+ set letters(shadow,dXy) {6 6}
+ set letters(shadow,fillColor) {\#000000;18}
+
+ set point(pos) {240 96}
+ set point(alpha) 80
+ set point(lineWidth) 1
+ set point(lineColor) {\#a10000;100}
+ set point(fillColor) {=radial -66 -66|\#ffffff;100 0|\#f70000;100 48|\#900000;100 80|\#ab0000;100 100}
+ set point(shadow,dXy) {5 5}
+ set point(shadow,fillColor) {=path -50 -50|\#770000;64 0|\#770000;70 78|\#770000;0 100}
+
+
+
+ proc create {zinc parent priority x y scaleX scaleY} {
+ variable letters point
+ #
+ # Create a group to hold the various parts
+ set logoGroup [$zinc add group $parent -priority $priority]
+
+ #
+ # Move the group in the right place
+ $zinc coords $logoGroup "$x $y"
+
+ #
+ # Add a sub-group to isolate the scaling
+ set scaleGroup [$zinc add group $logoGroup]
+ $zinc scale $scaleGroup $scaleX $scaleY
+
+ foreach {$dx dy} $letters(shadow,dXy) break
+ #
+ # Create a curve for the main form shadow
+ set lShadow [$zinc add curve $group $letters(coords) \
+ -tags lettersShadow -closed 1 -filled 1 -linewidth 0 \
+ -fillcolor $letters(shadow,fillColor)]
+ $zinc translate $lShadow $dx $dy
+
+ set lineWidth [expr int(($letters(lineWidth) * $xs) + 0.5)]
+ if { $lineWidth <= 0 } {
+ set lineWidth 1
+ }
+
+ #
+ # Create a curve for the main form
+ $zinc add curve $group $letters(coords) -tags letters -closed 0 \
+ -filled 1 -fillcolor $letters(fillColor) -linewidth $lineWidth \
+ -linecolor => $letters(lineColor)
+
+ #
+ # Create a group to hold the point and its shadow
+ set pointGroup [$zinc add group $group -alpha $point(alpha)]
+ $zinc coords $pointGroup $point(pos)
+
+ foreach {dx dy} $point(shadow,dXy) break
+ #
+ # Create a curve for the dot shadow
+ set pShadow [$zinc add arc $pointGroup {-20 -20 20 20} -tags pointShadow \
+ -closed 1 -filled 1 -fillcolor $point(shadow,fillColor) \
+ -lineWidth 0]
+ $zinc translate $pShadow $dx $dy
+
+ #
+ # Create a curve for the dot
+ $zinc add arc $pointGroup {-20 -20 20 20} -tags point -closed 1 \
+ -filled 1 -fillcolor $point(fillColor) -linewidth $point(lineWidth) \
+ -linecolor$point(lineColor)
+ }
+}
diff --git a/library/zincText.tcl b/library/zincText.tcl
index e7c8899..a3a9a69 100644
--- a/library/zincText.tcl
+++ b/library/zincText.tcl
@@ -27,7 +27,7 @@
#
# SYNOPSIS
#
-# package require ZincText;
+# package require zincText;
#
# zn_TextBindings $zinc
#
@@ -184,4 +184,4 @@ proc textDel {w dir} {
}
}
-package provide ZincText 1.0
+package provide zincText 1.0