Page 1 sur 1

problème avec VectorSourceImage

Publié : lun. 24/juil./2017 15:12
par Mesa
Je dois passer à côté de quelque chose car l'image du milieu ne s'affiche pas.

Code : Tout sélectionner

If OpenWindow(0, 0, 0, 400, 400, "VectorDrawing", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  
  If CreateImage(0, 32, 32, 32, RGBA(0,0,0,255))
    StartDrawing(ImageOutput(0))
    Box(1, 1, 30, 30,  RGBA(255, 0, 0,255))
    StopDrawing()
  EndIf
  CanvasGadget(0, 0, 0, 400, 400) 
  
  StartDrawing(CanvasOutput(0)) ;ok !
  DrawImage(ImageID(0),10,10)
  StopDrawing()
  
  If StartVectorDrawing(CanvasVectorOutput(0))
    
    AddPathBox(10, 50, 32, 32 )
    VectorSourceImage(ImageID(0));Ne marche pas !
    FillPath()
    
    AddPathBox(10, 100, 32, 32 )
    VectorSourceImage(ImageID(0),255,ImageWidth(0), ImageHeight(0), #PB_VectorImage_Repeat); ok !
    FillPath()
    
    StopVectorDrawing()
  EndIf
  
  Repeat
    Event = WaitWindowEvent()
  Until Event = #PB_Event_CloseWindow
EndIf
Une idée ?

M.

Re: problème avec VectorSourceImage

Publié : lun. 24/juil./2017 15:42
par Mesa
J'ai trouvé finalement.

Code : Tout sélectionner

If OpenWindow(0, 0, 0, 400, 400, "VectorDrawing", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  
  If CreateImage(0, 32, 32, 32, RGBA(0,0,0,255))
    StartDrawing(ImageOutput(0))
    Box(1, 1, 30, 30,  RGBA(255, 0, 0,255))
    StopDrawing()
  EndIf
  CanvasGadget(0, 0, 0, 400, 400) 
  
  StartDrawing(CanvasOutput(0)) ;ok !
  DrawImage(ImageID(0),10,10)
  StopDrawing()
  
  If StartVectorDrawing(CanvasVectorOutput(0))
    
    ;     AddPathBox(10, 50, 32, 32 )
    ;     TranslateCoordinates(10, 50) ; POURQUOI FAIRE ?
    ; ;     MovePathCursor(10,50)
    ;     VectorSourceImage(ImageID(0));maintenant ça marche pas !
    ;     FillPath()
    ;     TranslateCoordinates(-10, -50)
    
    
    MovePathCursor(10, 50)
    DrawVectorImage(ImageID(0)) ;ok !
    
    AddPathBox(10, 100, 32, 32 )
    VectorSourceImage(ImageID(0),255,ImageWidth(0), ImageHeight(0), #PB_VectorImage_Repeat); ok !
    FillPath()
    
    StopVectorDrawing()
  EndIf
  
  Repeat
    Event = WaitWindowEvent()
  Until Event = #PB_Event_CloseWindow
EndIf
M.