Dessiner un cercle sans circle() + épaisseur de trait

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Stéphane
Messages : 29
Inscription : sam. 18/avr./2020 15:17

Dessiner un cercle sans circle() + épaisseur de trait

Message par Stéphane »

Bonjour

Je souhaiterais déterminer le point d intersection de deux cercles.
Pour cela j ai envisagé de dessiner un premier cercle puis un second en testant la couleur du point qui va être dessiné afin de savoir s il est de la couleur du cercle précédemment dessiné.
Cela m’évite de faire des calculs pour lesquels je devrais suivre un tuto pke le lycée ça fait 33 ans...

J ai trouvé la fonction circle qui dessine un disque (un cercle plein) et non un le périmètre du cercle .
J ai potassé la doc sur le dessin 2D et n ai pas trouvé de paramètre pour modifier l’épaisseur du trait dans Plot, line, lineXY..
Je n ai pas trouvé de fonction ou de paramètre à appliquer pour dessiner un cercle et non un disque.

Mes questions et j y arrive :
Existe t il une fonction qui permet de dessiner un cercle point par point sur son périmètre ?
Existe t il un paramètre qui permet de choisir l épaisseur de ce que l on dessine (plot, line, lineXY)...Sinon comment y remédier ?
Si l un d entre vous a un code qui permet de calculer les points d intersection de deux cercles, je suis intéressé

Merci pour votre aide
Avatar de l’utilisateur
Mindphazer
Messages : 695
Inscription : mer. 24/août/2005 10:42

Re: Dessiner un cercle sans circle() + épaisseur de trait

Message par Mindphazer »

Tu peux essayer ce module, il est basé sur la vectorlib
https://www.purebasic.fr/english/viewto ... 27&t=73051
Bureau : Win10 64bits
Maison : Macbook Pro M3 16" SSD 512 Go / Ram 24 Go - iPad Pro 32 Go (pour madame) - iPhone 15 Pro Max 256 Go
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Re: Dessiner un cercle sans circle() + épaisseur de trait

Message par SPH »


!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Dessiner un cercle sans circle() + épaisseur de trait

Message par falsam »

DrawingMode(#PB_2DDrawing_Outlined) permet de dessiner uniquement un contour.

Exemple avec ton cercle.

Code : Tout sélectionner

EnableExplicit

Enumeration window
  #mf
EndEnumeration

Enumeration gadget
  #mfCanvas
EndEnumeration

Declare start()
Declare exit()

start()

Procedure start()
  OpenWindow(#mf, 0, 0, 800, 600, "Nouvelle application", #PB_Window_SystemMenu| #PB_Window_ScreenCentered)
  
  CanvasGadget(#mfCanvas, 0, 0, 800, 600)
  
  If StartDrawing(CanvasOutput(#mfCanvas))
    DrawingMode(#PB_2DDrawing_Outlined)
    Circle(400, 300, 200, RGB(128, 128, 128))
    StopDrawing()  
  EndIf
  
  BindEvent(#PB_Event_CloseWindow, @exit())
  
  Repeat : WaitWindowEvent() : ForEver
EndProcedure

Procedure exit()
  End  
EndProcedure
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Demivec
Messages : 91
Inscription : sam. 18/sept./2010 18:13

Re: Dessiner un cercle sans circle() + épaisseur de trait

Message par Demivec »

Stéphane a écrit :Existe t il une fonction qui permet de dessiner un cercle point par point sur son périmètre ?
CustomFilterCallback().
Stéphane
Messages : 29
Inscription : sam. 18/avr./2020 15:17

Re: Dessiner un cercle sans circle() + épaisseur de trait

Message par Stéphane »

Merci pour vos réponses, j ai tout ce dont j ai besoin maintenant :)
Ollivier
Messages : 4197
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Re: Dessiner un cercle sans circle() + épaisseur de trait

Message par Ollivier »

Eh non... T'as pas tout !

Parce que tout ça, tu le fais parce que tu voulais pas ton cours de maths :

The mathematic lesson

Et puis un vrai site de maths avec l'adresse mail de l'auteur si besoin (c'est peut-être le moment, si ce n'est pas trop tard). Ce site fait partie de ceux que j'apprécie bien.
Stéphane
Messages : 29
Inscription : sam. 18/avr./2020 15:17

Re: Dessiner un cercle sans circle() + épaisseur de trait

Message par Stéphane »

C est pas faux :oops:

Moi les maths si j ai pas en tuto un exercice concret et résolu, j arrive pas à imprimer...

Je vais aller voir ce code, Merci
Ollivier
Messages : 4197
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Re: Dessiner un cercle sans circle() + épaisseur de trait

Message par Ollivier »

Pour le faire fonctionner :

1) Soit tu l'adaptes à la dernière version du compilateur

2) Soit tu prends la licence, qui rend dispo toutes les anciennes versions. Je crois celle-là c'est la 4.60 :lol:
Répondre