Affichage d'un lieu

Toute question à propos de l'utilisation de DGPad.
Post Reply
Aragorn
Posts: 28
Joined: Tue Jun 28, 2011 12:08 pm

Affichage d'un lieu

Post by Aragorn » Wed Aug 20, 2014 12:51 pm

Bonjour,
Dans le code suivant :

Code: Select all

// Coordinates System :
SetCoords(55.49047027679319,554.506893910403,68.04035188911845);


// Geometry :
A=Point("A","[0,3]","0");
B=Point("B","[5,3]","0");
C=Point("C","[5,0]","0");
D=Point("D","[0,0]","0");
P1=Point("P1","[7,1]","0");
P2=Point("P2","[7,0]","0");
P3=Point("P3","[80]","0");
P4=Point("P4","[8,0]","0");
E1=Expression("E1","x=","0","3","0.84","0.21324889305176106","6.3860177357473775");
S1=Segment("S1",A,B);
S2=Segment("S2",B,C);
S3=Segment("S3",C,D);
S4=Segment("S4",D,A);
R1=Ray("R1",P2,P1);
R2=Ray("R2",P2,P4);
C1=Circle1("C1",A,"E1");
P5=Point("P5","[E1+7,0]","0");
E=OrderedIntersection("E",S1,C1,1);
F=OrderedIntersection("F",S1,C1,1);
G=OrderedIntersection("G",S1,C1,1);
I=OrderedIntersection("I",S1,C1,0);
Perp1=Perpendicular("Perp1",R2,P5);
C2=Circle3("C2",A,I,B);
C3=Circle3("C3",A,I,C);
C4=Circle3("C4",A,I,D);
E2=Expression("E2","Aire=","","","-2*d(A,I)^2+8*d(A,I)","2.7117662475333995","6.239046126660223");
J=OrderedIntersection("J",S2,C2,0);
K=OrderedIntersection("K",S3,C3,0);
L=OrderedIntersection("L",S4,C4,0);
P6=Point("P6","[7,E2]","0");
Poly1=Polygon("Poly1","_I,_J,_K,_L");
Poly2=Polygon("Poly2","_A,_I,_L");
Poly3=Polygon("Poly3","_I,_B,_J");
Poly4=Polygon("Poly4","_J,_C,_K");
Poly5=Polygon("Poly5","_L,_K,_D");
Perp2=Perpendicular("Perp2",R1,P6);
P7=OrderedIntersection("P7",Perp1,Perp2,0);


// Styles :
STL(A,"c:#0000b2;s:6;sn:true;f:20;np:1.7220720718618483");
STL(B,"c:#0000b2;s:6;sn:true;f:20;np:1.494876385627487");
STL(C,"c:#0000b2;s:6;sn:true;f:20;np:4.70935091824462");
STL(D,"c:#0000b2;s:6;sn:true;f:20;np:4.693790000598973");
STL(P1,"c:#0000b2;s:6;f:30");
STL(P2,"c:#0000b2;s:6;f:30");
STL(P3,"c:#0000b2;s:6;f:30");
STL(P4,"c:#0000b2;s:6;f:30");
STL(E1,"c:#ed00ff;s:4;f:20;p:4;cL:100;cPT:YzojMDA0NGZmO3M6MTA7ZjozMA==");
STL(S1,"c:#006633;s:1;f:24");
STL(S2,"c:#006633;s:1;f:24");
STL(S3,"c:#006633;s:1;f:24");
STL(S4,"c:#006633;s:1;f:24");
STL(R1,"c:#993300;s:1;f:30;p:0");
STL(R2,"c:#993300;s:1;f:30;p:0");
STL(C1,"c:#cc66cc;h:1;s:1;f:30;p:0");
STL(P5,"c:#0000b2;h:1;s:6;f:30");
STL(E,"c:#0000b2;s:6;sn:true;f:30");
STL(F,"c:#0000b2;s:6;sn:true;f:30");
STL(G,"c:#0000b2;s:6;sn:true;f:30");
STL(I,"c:#0000b2;s:6;sn:true;f:20;np:1.4826604674372261");
STL(Perp1,"c:#780013;h:1;s:1;f:30;p:0");
STL(C2,"c:#cc66cc;h:1;s:1;f:30;p:0");
STL(C3,"c:#cc66cc;h:1;s:1;f:30;p:0");
STL(C4,"c:#cc66cc;h:1;s:1;f:30;p:0");
STL(E2,"c:#ff5e00;s:7;f:20;p:1;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA==");
STL(J,"c:#0000b2;s:6;sn:true;f:20;np:0.16122422208502293");
STL(K,"c:#0000b2;s:6;sn:true;f:20;np:4.707870310089737");
STL(L,"c:#0000b2;s:6;sn:true;f:20;np:3.02058299048987");
STL(P6,"c:#0000b2;h:1;s:6;f:30");
STL(Poly1,"c:#006633;o:0.2;s:1;f:30");
STL(Poly2,"c:#966400;o:0.2;s:1;f:30");
STL(Poly3,"c:#966400;o:0.2;s:1;f:30");
STL(Poly4,"c:#966400;o:0.2;s:1;f:30");
STL(Poly5,"c:#966400;o:0.2;s:1;f:30");
STL(Perp2,"c:#780013;h:1;s:1;f:30;p:0");
STL(P7,"c:#0000b2;s:6;f:30");
SetCoordsStyle("isAxis:false;isGrid:true;isOx:true;isOy:true;isLockOx:false;isLockOy:false;centerZoom:false;color:#111111;fontSize:18;axisWidth:1;gridWidth:0.1");
je ne comprends pas pourquoi je ne parviens pas à afficher le lieu du point P7.
Merci.

User avatar
Dibs
Posts: 112
Joined: Tue Apr 24, 2012 2:15 am
Location: Pau

Re: Affichage d'un lieu

Post by Dibs » Wed Aug 20, 2014 6:13 pm

Joli fichier.
Je pense que le problème vient du fait que P7 dépend d'un curseur et non d'un point sur objet.

Je te propose l'idée suivante (à adapter) :
- ajouter un segment [P8,P9] et P10 un point sur le segment.
- donner à E1 la valeur x(P10).
On peut alors obtenir le lieu.

Attachments
AireMax.txt
(3.43 KiB) Downloaded 195 times

Aragorn
Posts: 28
Joined: Tue Jun 28, 2011 12:08 pm

Re: Affichage d'un lieu

Post by Aragorn » Thu Aug 21, 2014 12:56 pm

Bonjour,
Dibs wrote:Joli fichier.
Merci.
Dibs wrote:donner à E1 la valeur x(P10).
Ne serait-ce pas plutôt x(P10)-x(P8) ?
Dibs wrote: On peut alors obtenir le lieu.
Ta solution fonctionne, mais je trouve que le déplacement du point est "saccadé", et cela engendre des zooms désagréables sur la tablette (Ipad), voire la bloquer complètement à tel point que je dois désinstaller l'application pour ensuite la réinstaller.
Merci.

User avatar
Dibs
Posts: 112
Joined: Tue Apr 24, 2012 2:15 am
Location: Pau

Re: Affichage d'un lieu

Post by Dibs » Thu Aug 21, 2014 5:26 pm

Aragorn wrote: Ne serait-ce pas plutôt x(P10)-x(P8) ?
Oui, tu as raison.
Aragorn wrote: Ta solution fonctionne, mais je trouve que le déplacement du point est "saccadé"
Il faut peut-être adapter l'incrément de P10. Je n'arrive pas à le voir sur ordi.
Aragorn wrote:et cela engendre des zooms désagréables sur la tablette (Ipad), voire la bloquer complètement à tel point que je dois désinstaller l'application pour ensuite la réinstaller.
Alors là, évidemment, c'est gênant… La tablette est plus "sensible" pour certains trucs.
J'ai écrit une variante où P8 et P9 sont épinglés, le pseudo-curseur n'étant plus sensible au zoom.
Et la formule pour E1 devient d(P8,P10)/d(P8,P9)*3
Pas sûr que ça réglera le problème, mais c'est quand-même mieux comme pseudo-curseur.

Attachments
AireMax3.txt
(3.46 KiB) Downloaded 170 times

Aragorn
Posts: 28
Joined: Tue Jun 28, 2011 12:08 pm

Re: Affichage d'un lieu

Post by Aragorn » Fri Aug 22, 2014 3:06 pm

Bonjour Dibs,
Merci pour ta collaboration, le déplacement du point est nettement moins saccadé et le curseur moins sensible.

Post Reply