in reply to How to rotate text in Tk::Abstract Canvas ?

G'day KuntalBhusan,

You haven't defined either $x or $y in $canvas->rotate($text,90,$x,$y);.

Looking at Tk::AbstractCanvas' Source, you'll see these values must be defined (the return() unless ... line):

sub rotate { # takes as input id of obj to rot, angle to rot by, && op +tional x,y point to rot about instead of obj center, if possible my($self, $obid, $angl, $xfoc, $yfoc)= @_; croak "rotate: Must suppl +y an angle -" unless(defined($angl)); my $type = $self->type($obid); # some objs need a pivot point to rot +ate their center around return() unless(exists($_can_rotate_about_center{$type}) || (defined +($xfoc) && defined($yfoc))); $_rotate_methods{$type}->($self, $obid, $angl, $xfoc, $yfoc); }

-- Ken

Replies are listed 'Best First'.
Re^2: How to rotate text in Tk::Abstract Canvas ?
by KuntalBhusan (Acolyte) on May 10, 2013 at 04:51 UTC
    Sorry for that...actually this snippet is part of a code where the $x and $y comes from a file ( i just pasted it and forgot to change it...perhaps it would be 0,0 or something but it is optional as the subroutine says..).

    But even after altering and applying the changes it wont work...can you edit this code suitably so that it is rotated by a supplied angle...waiting eagerly for some help...