Le langage SMS est exclu sur les forums ProgBoards, tout message ne respectant pas la charte sera déplacé, modifié, ou supprimé par nos modérateurs.

Forum Langages » BASIC » Déformation dessin vectoriel à l'affichage en qb4.5

diemaker form
ProgBoarder
Citer Windows XP Firefox 2 - Posté le 22/02/2008 à 15:11
Bonjour,
Je pose ce post car je n'ai pas trouvé sur le site.
Après avoir dessiné avec qb un dessin vectoriel,
à l'affichage écran mon dessin se trouve écrasé par rapport à ce qu'il devrait être et les rayons se trouvent décalés des lignes droites alors qu'ils ont les mêmes coordonnées de début et de fin.
fichier original : voir photos plus bas
fichier à l'écran : (pas pu faire de "imp ecran" ? sous qb
j'utilise un screen 12
Merci.
DMF
(désapprouve)

Edité par diemaker form ( 24/04/2008 18:46:56 )
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
Freem
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 22/02/2008 à 15:48
Pourrais-tu mettre un lien vers ton source? (Pour la cohérance du forum, et aussi parce que je n'ai pas suivi la discussion sur les vecteurs xD)
Et si tu pouvais aussi mettre une image avec le résultat désiré, ce serait top (sourire)
Tu me dis, j'oublie. Tu m'enseignes, je me souviens. Tu m'impliques, j'apprends. - Benjamin Franklin
SFLPMEA
ProgBoarder
RemonterCiter Windows 98 Firefox 2 - Posté le 22/02/2008 à 17:26
(héhé Salutations.

Chez moi aussi, les images sont légèrement aplaties comme le montre ce petit prog :

' *** AACARRE.BAS
CLS : SCREEN 12: WINDOW (1, 480)-(640, 1): CLS
LINE (10, 10)-(630, 470), 11, B
LOCATE 15, 20: PRINT "Mon carré mesure 36 sur 29 environ"
SLEEP

Je n'y avais jamais prêté attention. Est-ce bien cela que tu signales ?
Cela doit être une conséquence du mode d'écran (SCREEN) et des dimensions 'physiques' de l'écran. Peut-on l'éviter, c'est-à-dire obtenir un carré parfait ? Il semblerait que les pixels ne sont pas des 'petits' carrés impeccables … Pour mes applications, ce n'est pas important.
Par contre, à coordonnées identiques, il ne peut y avoir qu'un seul point (exclamation) Sauf que sur l'écran ce sont des entiers courts (%), et, si X et Y sont en simple précision (!), ils doivent être arrondis automatiquement (écart maxi de 1 pixel).

(héhé Salutations.
Moi, mon ordinateur, je l'ai baptisé "Billy" ...
En remerciement, je reçois beaucoup de pages bleues !
Freem
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 22/02/2008 à 17:57
Ca me rappelle un doc que j'ai lu, il y à longtemps...
Ce doc parlait du mode 13h et disait qu'il s'agit d'un mode bâtard car n'ayant pas un rapport hauteur/largeur de 3/4 (ce doc précisait aussi qu'il est possible de quasiment doubler la résolution du mode 13h...) ce qui avait pour conséquence que les cercles ressemblaient à des ellypses...
Avec les écrans actuels, cette histoire de rapport hauteur/largeur = 3/4 est probablement obsolete, mais en toute logique, pour éviter ce désagrément, il faut que ta résolution ait le même rapport que ton écran, sinon, déformation.
S'il s'avère que le problème se situe la, alors, il va te falloir modifier ton code pour gérer ce problème de différence de rapport.
Bon, la, tout de suite, je n'ai aucune idée sur le comment, mais avec un bon schéma, tu devrais pouvoir trouver la formule mathématique nécessaire... à coups de multiplication et division.
Bonne chance (clein d'oeil)
Tu me dis, j'oublie. Tu m'enseignes, je me souviens. Tu m'impliques, j'apprends. - Benjamin Franklin
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 25/02/2008 à 09:18
Bonjour,
Voilà les photos pas très nettes un lundi matin !
détail interieur :

détail dans un coin :

tel que devrait être le tracé :

Dans mon programme j'utilise un screen 12 avec un format variable suivant le format du dessin afin qu'il s'affiche toujours en plein écran X maxi et Y maxi sont les valeurs exactes du tracé.
Salutations,
DMF
(eek)
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 25/02/2008 à 09:52
Re-bonjour,
Je vous met la partie de mon prog + le fichier txt avec les données :
Fichier texte : NE PAS PRENDRE LES COMMENTAIRES


"A" = arc ou cercle et "L" = ligne
A,2,25.78,17.1,25.78,17.1,25,20,1 ' cercle au centre
L,2,27.99,10.19,34.99,22.31,0,0,q ' ligne 27.99 et 10.19 = x et y départ | 34.99 et 22.31 = x et y fin
A,2,33.9,26.41,34.99,22.31,36.49,24.91,1 ' coordonnées identiques
L,2,33.9,26.41,26.1,30.91,0,0,q ' coordonnées identiques
A,2,22,29.81,26.1,30.91,23.5,32.41,1' idem pour tous
L,2,22,29.81,15,17.69,0,0,q ' 3 dernières variables inutiles pour les lignes et arcs
A,2,16.1,13.59,15,17.69,13.5,15.09,1 ' coordonnées du centre du rayon
L,2,16.1,13.59,23.9,9.09,0,0,q
A,2,28,10.18,23.9,9.09,26.49,7.59,1
L,2,5,0,45,0,0,0,q
A,2,50,5,45,0,50,0,1
L,2,50,5,50,35,0,0,q
A,2,45,40,50,35,50,40,1
L,2,45,40,5,40,0,0,q
A,2,0,35,5,40,0,40,1
L,2,0,35,0,5,0,0,q
A,2,5,0,0,5,0,0,1


Fichier basic avec nouveau wall non protégé :


Wall (145) : Afficher le code source - Ouvrir dans une nouvelle fenêtre

mettres les données dans un fichier nommé : lignes-2.txt
et lancez le prog, vous comprendrez mieux !
Merci
DMF
(clein d'oeil)

Edité par diemaker form ( 26/02/2008 11:33:18 )
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
Freem
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 26/02/2008 à 09:13
J'ai pas trop le temps de regarder, la, mais à mon avis, le truc qui est clair, c'est que ça ne vient pas du mode d'écran...
Les points d'intersections ne sont tout simplement pas bon...
Je suppose une erreur d'arrondi?
A vérifier (en traçant pas à pas, peut-être?)...
Tu me dis, j'oublie. Tu m'enseignes, je me souviens. Tu m'impliques, j'apprends. - Benjamin Franklin
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 26/02/2008 à 11:32
Bonjour,

ATTENTION ! dans mon Re(4) à la ligne 4
il faut remplacer "lignes.txt" par "lignes-2.txt"
pour que l'affichage pleine écran automatique puisse fonctionner !


Freem, j'ai rajouté des commentaires dans mon fichier texte en [Re4]
les coordonnées de début en x et y sont identiques au coordonnées x et y fin ou x et y début du segment suivant (mis en gras)
Je ne vois pas ?
Merci
DMF
(clein d'oeil)

Edité par diemaker form ( 26/02/2008 11:50:53 )
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 26/02/2008 à 15:06
Bonjour,
Je me sens un peu abandonné dans ma galère (triste)
Mais non, je commence à trouver !
ça viens bien du mode écran !
dans le wall 145 à la ligne :
SCREEN 12: WINDOW (-1, ywin + 2)-(xwin + 2, -1): CLS
j'ai mis :
SCREEN 12: WINDOW (-2, ywin + 2)-(xwin + 8, -2): CLS
le cercle et le contour extérieur sont impécable pour ce tracé.
par contre les rayons de la partie intérieur auraient besoin d'une rotation supplémentaire pour l'affichage tous d'environ -3°
Si vous avez une idée ?
DMF
(héhé

Edité par diemaker form ( 26/02/2008 15:52:15 )
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 26/02/2008 à 15:48
Bonjour diemaker form !
sur ton wall 145, au SUB créé par SFLPMEA :
GS01.ANALYSE: 'Calcul de l'angle trigo
au Quadran 3 rajouter : Angle!=Angle!-0.32 (pourquoi ?)
au Quadran 2 rajouter : Angle!=Angle!-0.20
au Quadran 4 rajouter : Angle!=Angle!-0.20
au Quadran 1 rajouter : Angle!=Angle!-0.20
ce qui permet de décaler les angles de début et de fin sur des arcs ne se trouvant pas à 0°, 90°,180° ou 270°
l'affichage graphique est assez réussit !
Je vais faire des essais avec d'autres fichiers et vous dire si c'est résolu ou pas !
Salutations,
DMF
(héhé
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr
diemaker form
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 26/02/2008 à 18:51
Re bonjour !
le problème avec les lignes est résolu, mais avec les arcs c'est à revoir !
(désapprouve)
le fait de décaler les angles fonctionne avec certains fichiers seulement.
j'ai mis un fichier "lignes-2.txt" plus complexe pour voir sur le wall :


Wall (146) : Afficher le code source - Ouvrir dans une nouvelle fenêtre

c'est le genre de fichiers que j'utilise et encore celui-ci est très simple, il peut y avoir 500 à 3000 lignes.
sur le dessin au centre droite je dois avoir un rayon d'environ 2000 mm et l'affichage en met que la moitié.
sur le dessin bas droite il y a un cercle de rayon environ 5 mm qui devrait être un tout petit segment de rayon.
n'oubliez pas de supprimer les modifs apportées au Re[8]
ça ne marche qu'avec le 1er fichier "lignes-2.txt"
Si une âme charitable veux bien essayer, ..... du bonheur !
D'avance merci,
Salutations,
DMF
(gêné)

Edité par diemaker form ( 26/02/2008 18:57:05 )
Formes de Découpe, Outils Coupants pour l'imprimerie sur http://www.diemakerform.fr

Poster une réponse

STOP aux fautes volontaires !
Message
Formatage
Note: pour partager du code source, merci d'utiliser le wall !
Smileys (sourire) (yekyek) (clein d'oeil) (désapprouve) (triste) (cool) (langue) (confus) (gêné) (neutre) (eek) (surpris) (diable) (flèche) (exclamation) (question) (diable) (idée) (méchant)
Pseudonyme
Recopiez le code
v6 © Computaid SPRL 2005-2008 - Tous droits réservés - Hébergé par eTigris - Page générée en 0,045 s - Crédits - Stats
1 connecté