Schrift
[thread]12236[/thread]

Perl/Tk canvas: C - förmiges Ding

Leser: 3


<< >> 4 Einträge, 1 Seite
pktm
 2008-07-24 04:18
#112563 #112563
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Hallo!

Ich bräuchte eine mit Farbe gefüllte Form auf meiner Canvas, die aussieht wie ein großes C, und zwar ein fettes.

Macht man das mit einem Rechteck? Wie defotmiert man das dann?

Grüße, pktm
http://www.intergastro-service.de (mein erstes CMS :) )
Spieler
 2008-07-24 14:39
#112580 #112580
User since
2007-09-24
70 Artikel
BenutzerIn
[default_avatar]
Hallo,
meinst du so etwas:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
use strict;
use warnings;
use Tk;
my $mw =tkinit;
my $c = $mw->Canvas->pack(-fill => 'both',
-expand => 1);
$c->createArc(40,40,140,160,
-style => 'arc',
-start => 55,
-extent => 250,
-width => 30,
);
MainLoop;


Grüße, Christoph
pktm
 2008-07-24 15:36
#112594 #112594
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Ha toll!

Genau das, nur die Form sollte geringfügig anders sein:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/perl

use strict;
use warnings;
use Tk;
use Tk::Canvas;

my $mw = tkinit();
my $c = $mw->Canvas->pack(-fill => 'both',
-expand => 1);

$c->createArc(40,40,180,160,
-style => 'arc',
-start => 90,
-extent => 180,
-width => 30,
);

$mw->MainLoop();


Wie ließt Otto normal das? Ein Arc ist laut Dokumentation ein Oval mit 2 Winkeln. Mein Vorstellungsvermögen reiocht nicht ganz aus, um mit 2 Winkeln von eiem Oval auf ein C zu kommen :-s

Grüße, pktm
http://www.intergastro-service.de (mein erstes CMS :) )
renee
 2008-07-24 16:18
#112603 #112603
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Die ersten vier Werte geben das "Gebiet" an, innerhalb dessen das Oval gezeichnet werden soll (damit bestimmst Du indirekt die Krümmung des Ovals). Damit landest Du auch bei einem Koordinatenkreuz:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
                |
|
|
|
|
|
|
|
-------------+-------------
|
|
|
|
|
|
|
|


der start-Parameter gibt an, bei welchem Winkel das Oval anfängt. Hier 90° (gekennzeichnet durch das X). Wenn Du 45° angibst, dann fängt Dein Oval dort an, wo die 0 steht

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
                X
|
| 0
|
|
|
|
|
-------------+-------------
|
|
|
|
|
|
|
|


Mit extend gibst Du an, wie weit Du das Oval haben willst - ebenfalls wieder in ° angegeben (hier: 180°) Die Endpunkte zu den genannten Startpunkten sind dann wie folgt (wieder X bzw. 0)

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
                X
|
| 0
|
|
|
|
|
-------------+-------------
|
|
|
|
|
0 |
|
X
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< >> 4 Einträge, 1 Seite



View all threads created 2008-07-24 04:18.