How to create a point on a line with an angle constraint?
Clash Royale CLAN TAG#URR8PPP
up vote
2
down vote
favorite
I want to define a point (node) D
on line AC
such that angle ABC
equals to angle CDE
. How to do this by using the easiest trick of PSTricks?
documentclass[pstricks,border=1cm]standalone
usepackagepst-eucl
begindocument
beginpspicture(8,-6)
pstTriangle(0,-6)B(8,-6)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=4]BC)E
endpspicture
enddocument
pstricks pst-node pst-eucl
add a comment |Â
up vote
2
down vote
favorite
I want to define a point (node) D
on line AC
such that angle ABC
equals to angle CDE
. How to do this by using the easiest trick of PSTricks?
documentclass[pstricks,border=1cm]standalone
usepackagepst-eucl
begindocument
beginpspicture(8,-6)
pstTriangle(0,-6)B(8,-6)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=4]BC)E
endpspicture
enddocument
pstricks pst-node pst-eucl
This is what you want: tex.stackexchange.com/a/172473/15036
â Thruston
1 hour ago
add a comment |Â
up vote
2
down vote
favorite
up vote
2
down vote
favorite
I want to define a point (node) D
on line AC
such that angle ABC
equals to angle CDE
. How to do this by using the easiest trick of PSTricks?
documentclass[pstricks,border=1cm]standalone
usepackagepst-eucl
begindocument
beginpspicture(8,-6)
pstTriangle(0,-6)B(8,-6)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=4]BC)E
endpspicture
enddocument
pstricks pst-node pst-eucl
I want to define a point (node) D
on line AC
such that angle ABC
equals to angle CDE
. How to do this by using the easiest trick of PSTricks?
documentclass[pstricks,border=1cm]standalone
usepackagepst-eucl
begindocument
beginpspicture(8,-6)
pstTriangle(0,-6)B(8,-6)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=4]BC)E
endpspicture
enddocument
pstricks pst-node pst-eucl
pstricks pst-node pst-eucl
asked 2 hours ago
Artificial Stupidity
3,8991828
3,8991828
This is what you want: tex.stackexchange.com/a/172473/15036
â Thruston
1 hour ago
add a comment |Â
This is what you want: tex.stackexchange.com/a/172473/15036
â Thruston
1 hour ago
This is what you want: tex.stackexchange.com/a/172473/15036
â Thruston
1 hour ago
This is what you want: tex.stackexchange.com/a/172473/15036
â Thruston
1 hour ago
add a comment |Â
3 Answers
3
active
oldest
votes
up vote
4
down vote
Not sure if this is the easiest. But it works.
documentclass[pstricks,border=1cm]standalone
usepackagepst-eucl
begindocument
beginpspicture(8,-6)
pstTriangle(0,-6)B(8,-6)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=4]BC)E
pstInterLC[PointSymbol=none,PointName=none]CACEGF
pstTranslation[PointSymbol=none,PointName=none]ABF
pstInterLL[PointSymbol=none,PointName=none]CBFF'D'
pstInterLCCACD'G'D
pstLineABDE
pstMarkAngleCDE
%pstArcOAB[linecolor=blue]CEA
%pstLineABFF'
%pstArcOAB[linecolor=blue]CD'A
endpspicture
enddocument
To see the construction, simply remove the three [PointSymbol=none,PointName=none]
âÂÂs and uncomment the last three lines within the pspicture
.
add a comment |Â
up vote
2
down vote
Just for comparison, anyone wrestling with the pst-eucl
syntax and documentation, might like to try this type of thing in Metapost, using the elegant implicit definition of linear variables.
documentclass[border=5mm]standalone
usepackageluatex85
usepackageluamplib
begindocument
mplibtextextlabelenable
beginmplibcode
vardef angle_mark(expr a, b, c, r) =
fullcircle scaled 2r
rotated angle (a-b)
shifted b
cutafter (b--c)
enddef;
beginfig(1);
pair A, B, C, D, E;
A = 6 right scaled 1cm;
B = 2 left scaled 1cm;
C = 6 up scaled 1cm;
E = 1/5[B,C]; % or wherever you like along B--C....
numeric a, b, d, e;
a = abs(B-C);
b = abs(C-A);
d = abs(C-E);
a/b = e/d; % implicitly define "e"
D = (e/b)[C,A]; % D is then e/b along C--A...
label.ulft("$a$", 1/2[B,C]) withcolor 2/3 blue;
label.urt ("$b$", 1/2[A,C]) withcolor 2/3 blue;
label.lrt ("$d$", 1/2[C,E]) withcolor 2/3 blue;
label.llft("$e$", 1/2[C,D]) withcolor 2/3 blue;
draw angle_mark(A, B, C, 12) withcolor 2/3 red;
draw angle_mark(C, D, E, 12) withcolor 2/3 red;
draw A--B--C--cycle;
draw D--E;
dotlabel.lrt ("$A$", A);
dotlabel.llft("$B$", B);
dotlabel.top ("$C$", C);
dotlabel.urt ("$D$", D);
dotlabel.ulft("$E$", E);
endfig;
endmplibcode
enddocument
add a comment |Â
up vote
0
down vote
My own solution.
documentclass[pstricks,border=15pt]standalone
usepackagepst-eucl
begindocument
beginpspicture(6,-4)
pstTriangle(0,-4)B(6,-4)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=3]BC)E
pstRotation[RotAngle=pstAngleAOBBAC,PointName=none,PointSymbol=none]EC[C']
pstInterLL[PosAngle=30]ACEC'D
pstMarkAngleCDE
nclineED
endpspicture
enddocument
add a comment |Â
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
4
down vote
Not sure if this is the easiest. But it works.
documentclass[pstricks,border=1cm]standalone
usepackagepst-eucl
begindocument
beginpspicture(8,-6)
pstTriangle(0,-6)B(8,-6)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=4]BC)E
pstInterLC[PointSymbol=none,PointName=none]CACEGF
pstTranslation[PointSymbol=none,PointName=none]ABF
pstInterLL[PointSymbol=none,PointName=none]CBFF'D'
pstInterLCCACD'G'D
pstLineABDE
pstMarkAngleCDE
%pstArcOAB[linecolor=blue]CEA
%pstLineABFF'
%pstArcOAB[linecolor=blue]CD'A
endpspicture
enddocument
To see the construction, simply remove the three [PointSymbol=none,PointName=none]
âÂÂs and uncomment the last three lines within the pspicture
.
add a comment |Â
up vote
4
down vote
Not sure if this is the easiest. But it works.
documentclass[pstricks,border=1cm]standalone
usepackagepst-eucl
begindocument
beginpspicture(8,-6)
pstTriangle(0,-6)B(8,-6)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=4]BC)E
pstInterLC[PointSymbol=none,PointName=none]CACEGF
pstTranslation[PointSymbol=none,PointName=none]ABF
pstInterLL[PointSymbol=none,PointName=none]CBFF'D'
pstInterLCCACD'G'D
pstLineABDE
pstMarkAngleCDE
%pstArcOAB[linecolor=blue]CEA
%pstLineABFF'
%pstArcOAB[linecolor=blue]CD'A
endpspicture
enddocument
To see the construction, simply remove the three [PointSymbol=none,PointName=none]
âÂÂs and uncomment the last three lines within the pspicture
.
add a comment |Â
up vote
4
down vote
up vote
4
down vote
Not sure if this is the easiest. But it works.
documentclass[pstricks,border=1cm]standalone
usepackagepst-eucl
begindocument
beginpspicture(8,-6)
pstTriangle(0,-6)B(8,-6)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=4]BC)E
pstInterLC[PointSymbol=none,PointName=none]CACEGF
pstTranslation[PointSymbol=none,PointName=none]ABF
pstInterLL[PointSymbol=none,PointName=none]CBFF'D'
pstInterLCCACD'G'D
pstLineABDE
pstMarkAngleCDE
%pstArcOAB[linecolor=blue]CEA
%pstLineABFF'
%pstArcOAB[linecolor=blue]CD'A
endpspicture
enddocument
To see the construction, simply remove the three [PointSymbol=none,PointName=none]
âÂÂs and uncomment the last three lines within the pspicture
.
Not sure if this is the easiest. But it works.
documentclass[pstricks,border=1cm]standalone
usepackagepst-eucl
begindocument
beginpspicture(8,-6)
pstTriangle(0,-6)B(8,-6)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=4]BC)E
pstInterLC[PointSymbol=none,PointName=none]CACEGF
pstTranslation[PointSymbol=none,PointName=none]ABF
pstInterLL[PointSymbol=none,PointName=none]CBFF'D'
pstInterLCCACD'G'D
pstLineABDE
pstMarkAngleCDE
%pstArcOAB[linecolor=blue]CEA
%pstLineABFF'
%pstArcOAB[linecolor=blue]CD'A
endpspicture
enddocument
To see the construction, simply remove the three [PointSymbol=none,PointName=none]
âÂÂs and uncomment the last three lines within the pspicture
.
answered 1 hour ago
Ruixi Zhang
3,491217
3,491217
add a comment |Â
add a comment |Â
up vote
2
down vote
Just for comparison, anyone wrestling with the pst-eucl
syntax and documentation, might like to try this type of thing in Metapost, using the elegant implicit definition of linear variables.
documentclass[border=5mm]standalone
usepackageluatex85
usepackageluamplib
begindocument
mplibtextextlabelenable
beginmplibcode
vardef angle_mark(expr a, b, c, r) =
fullcircle scaled 2r
rotated angle (a-b)
shifted b
cutafter (b--c)
enddef;
beginfig(1);
pair A, B, C, D, E;
A = 6 right scaled 1cm;
B = 2 left scaled 1cm;
C = 6 up scaled 1cm;
E = 1/5[B,C]; % or wherever you like along B--C....
numeric a, b, d, e;
a = abs(B-C);
b = abs(C-A);
d = abs(C-E);
a/b = e/d; % implicitly define "e"
D = (e/b)[C,A]; % D is then e/b along C--A...
label.ulft("$a$", 1/2[B,C]) withcolor 2/3 blue;
label.urt ("$b$", 1/2[A,C]) withcolor 2/3 blue;
label.lrt ("$d$", 1/2[C,E]) withcolor 2/3 blue;
label.llft("$e$", 1/2[C,D]) withcolor 2/3 blue;
draw angle_mark(A, B, C, 12) withcolor 2/3 red;
draw angle_mark(C, D, E, 12) withcolor 2/3 red;
draw A--B--C--cycle;
draw D--E;
dotlabel.lrt ("$A$", A);
dotlabel.llft("$B$", B);
dotlabel.top ("$C$", C);
dotlabel.urt ("$D$", D);
dotlabel.ulft("$E$", E);
endfig;
endmplibcode
enddocument
add a comment |Â
up vote
2
down vote
Just for comparison, anyone wrestling with the pst-eucl
syntax and documentation, might like to try this type of thing in Metapost, using the elegant implicit definition of linear variables.
documentclass[border=5mm]standalone
usepackageluatex85
usepackageluamplib
begindocument
mplibtextextlabelenable
beginmplibcode
vardef angle_mark(expr a, b, c, r) =
fullcircle scaled 2r
rotated angle (a-b)
shifted b
cutafter (b--c)
enddef;
beginfig(1);
pair A, B, C, D, E;
A = 6 right scaled 1cm;
B = 2 left scaled 1cm;
C = 6 up scaled 1cm;
E = 1/5[B,C]; % or wherever you like along B--C....
numeric a, b, d, e;
a = abs(B-C);
b = abs(C-A);
d = abs(C-E);
a/b = e/d; % implicitly define "e"
D = (e/b)[C,A]; % D is then e/b along C--A...
label.ulft("$a$", 1/2[B,C]) withcolor 2/3 blue;
label.urt ("$b$", 1/2[A,C]) withcolor 2/3 blue;
label.lrt ("$d$", 1/2[C,E]) withcolor 2/3 blue;
label.llft("$e$", 1/2[C,D]) withcolor 2/3 blue;
draw angle_mark(A, B, C, 12) withcolor 2/3 red;
draw angle_mark(C, D, E, 12) withcolor 2/3 red;
draw A--B--C--cycle;
draw D--E;
dotlabel.lrt ("$A$", A);
dotlabel.llft("$B$", B);
dotlabel.top ("$C$", C);
dotlabel.urt ("$D$", D);
dotlabel.ulft("$E$", E);
endfig;
endmplibcode
enddocument
add a comment |Â
up vote
2
down vote
up vote
2
down vote
Just for comparison, anyone wrestling with the pst-eucl
syntax and documentation, might like to try this type of thing in Metapost, using the elegant implicit definition of linear variables.
documentclass[border=5mm]standalone
usepackageluatex85
usepackageluamplib
begindocument
mplibtextextlabelenable
beginmplibcode
vardef angle_mark(expr a, b, c, r) =
fullcircle scaled 2r
rotated angle (a-b)
shifted b
cutafter (b--c)
enddef;
beginfig(1);
pair A, B, C, D, E;
A = 6 right scaled 1cm;
B = 2 left scaled 1cm;
C = 6 up scaled 1cm;
E = 1/5[B,C]; % or wherever you like along B--C....
numeric a, b, d, e;
a = abs(B-C);
b = abs(C-A);
d = abs(C-E);
a/b = e/d; % implicitly define "e"
D = (e/b)[C,A]; % D is then e/b along C--A...
label.ulft("$a$", 1/2[B,C]) withcolor 2/3 blue;
label.urt ("$b$", 1/2[A,C]) withcolor 2/3 blue;
label.lrt ("$d$", 1/2[C,E]) withcolor 2/3 blue;
label.llft("$e$", 1/2[C,D]) withcolor 2/3 blue;
draw angle_mark(A, B, C, 12) withcolor 2/3 red;
draw angle_mark(C, D, E, 12) withcolor 2/3 red;
draw A--B--C--cycle;
draw D--E;
dotlabel.lrt ("$A$", A);
dotlabel.llft("$B$", B);
dotlabel.top ("$C$", C);
dotlabel.urt ("$D$", D);
dotlabel.ulft("$E$", E);
endfig;
endmplibcode
enddocument
Just for comparison, anyone wrestling with the pst-eucl
syntax and documentation, might like to try this type of thing in Metapost, using the elegant implicit definition of linear variables.
documentclass[border=5mm]standalone
usepackageluatex85
usepackageluamplib
begindocument
mplibtextextlabelenable
beginmplibcode
vardef angle_mark(expr a, b, c, r) =
fullcircle scaled 2r
rotated angle (a-b)
shifted b
cutafter (b--c)
enddef;
beginfig(1);
pair A, B, C, D, E;
A = 6 right scaled 1cm;
B = 2 left scaled 1cm;
C = 6 up scaled 1cm;
E = 1/5[B,C]; % or wherever you like along B--C....
numeric a, b, d, e;
a = abs(B-C);
b = abs(C-A);
d = abs(C-E);
a/b = e/d; % implicitly define "e"
D = (e/b)[C,A]; % D is then e/b along C--A...
label.ulft("$a$", 1/2[B,C]) withcolor 2/3 blue;
label.urt ("$b$", 1/2[A,C]) withcolor 2/3 blue;
label.lrt ("$d$", 1/2[C,E]) withcolor 2/3 blue;
label.llft("$e$", 1/2[C,D]) withcolor 2/3 blue;
draw angle_mark(A, B, C, 12) withcolor 2/3 red;
draw angle_mark(C, D, E, 12) withcolor 2/3 red;
draw A--B--C--cycle;
draw D--E;
dotlabel.lrt ("$A$", A);
dotlabel.llft("$B$", B);
dotlabel.top ("$C$", C);
dotlabel.urt ("$D$", D);
dotlabel.ulft("$E$", E);
endfig;
endmplibcode
enddocument
answered 37 mins ago
Thruston
24.6k23988
24.6k23988
add a comment |Â
add a comment |Â
up vote
0
down vote
My own solution.
documentclass[pstricks,border=15pt]standalone
usepackagepst-eucl
begindocument
beginpspicture(6,-4)
pstTriangle(0,-4)B(6,-4)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=3]BC)E
pstRotation[RotAngle=pstAngleAOBBAC,PointName=none,PointSymbol=none]EC[C']
pstInterLL[PosAngle=30]ACEC'D
pstMarkAngleCDE
nclineED
endpspicture
enddocument
add a comment |Â
up vote
0
down vote
My own solution.
documentclass[pstricks,border=15pt]standalone
usepackagepst-eucl
begindocument
beginpspicture(6,-4)
pstTriangle(0,-4)B(6,-4)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=3]BC)E
pstRotation[RotAngle=pstAngleAOBBAC,PointName=none,PointSymbol=none]EC[C']
pstInterLL[PosAngle=30]ACEC'D
pstMarkAngleCDE
nclineED
endpspicture
enddocument
add a comment |Â
up vote
0
down vote
up vote
0
down vote
My own solution.
documentclass[pstricks,border=15pt]standalone
usepackagepst-eucl
begindocument
beginpspicture(6,-4)
pstTriangle(0,-4)B(6,-4)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=3]BC)E
pstRotation[RotAngle=pstAngleAOBBAC,PointName=none,PointSymbol=none]EC[C']
pstInterLL[PosAngle=30]ACEC'D
pstMarkAngleCDE
nclineED
endpspicture
enddocument
My own solution.
documentclass[pstricks,border=15pt]standalone
usepackagepst-eucl
begindocument
beginpspicture(6,-4)
pstTriangle(0,-4)B(6,-4)A(2,0)C
pstMarkAngleABC
pstGeonode[PosAngle=180]([nodesep=3]BC)E
pstRotation[RotAngle=pstAngleAOBBAC,PointName=none,PointSymbol=none]EC[C']
pstInterLL[PosAngle=30]ACEC'D
pstMarkAngleCDE
nclineED
endpspicture
enddocument
answered 6 mins ago
Artificial Stupidity
3,8991828
3,8991828
add a comment |Â
add a comment |Â
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f451237%2fhow-to-create-a-point-on-a-line-with-an-angle-constraint%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
This is what you want: tex.stackexchange.com/a/172473/15036
â Thruston
1 hour ago