ShiftShape
ShiftShape ShapeIndex, Xoffset#, Yoffset#
 
Parameters:

    ShapeIndex = The Index of the shape you wish to shift
    Xoffset# = The amount to add to the X coords
    Yoffset# = The amount to add to the Y coords
Returns: NONE
 

      ShiftShape shifts the vertex within a shape a required distance. it works by simply adding the X & Y Offset values to each vertex X & Y positions within the shape.



FACTS:


      * When a shape is shifted, the ShiftShape command changes the original vertex values.




Mini Tutorial:


      This example creates a convex shape, shifts the vertex, then rotates and draws it.


  
  
; Limit the Speed of the program to 100fps or less
  SetFPS 100
  
; Create a Convex MySHape, of size 50, with 6 edges
  MyShape=NewConvexShape(50,6)
  
; Shift the Shapes vertex to 25 pixels to the RIGHT (x axis)
; and 30 pixels down the y axis
  
; This will change the Shapes Axis (it's center of rotation)
; so it will appear to wobble now when it rotates
  ShiftShape MyShape,25,30
  
  
; Start of Do/loop
  Do
     
   ; Clear the Screen
     Cls RGB(0,0,0)
     
   ; Rotate Shape
     RotateShape MyShape,Angle#,1
     
   ; Bump and wrap the rotation angle
     Angle#=WrapAngle(angle#,1)
     
   ; Draw the Filled shape
     DrawShape MyShape,100,100,2
     
   ; Showthe origin (0,0) of the shape  by drawing a circle
   ; at coordinate
     CircleC 100,100,4,true,$00ff0000
     
     
   ; Check the arrow keys, if any are down shift
   ; the shift in that directions
     DirectionX=0
     DirectionY=0
     
     If UpKey() Then      DirectionY=-1
     If DownKey() Then      DirectionY=1
     If LeftKey() Then      DirectionX=-1
     If RightKey() Then      DirectionX=1
     
   ; Move the shape in this direction (if any)
     ShiftShape MySHape,DirectionX,DirectionY
     
   ; Display the screen and wait for a key press
     Sync
  Loop
  
  




      This example outputs,






 
Related Info: DrawShape | RotateShape | RotateShapeXY | ScaleShape | ScaleShapeXY :
 


(c) Copyright 2002 - 2024 - Kevin Picone - PlayBASIC.com