Topic: Why do we include a Matrix and Vector class
Author: Dejan Milosavljevic <dmilos@gmail.com>
Date: Tue, 13 Jun 2017 11:11:40 +0200
Raw View
--001a114426fedbf15f0551d3d261
Content-Type: text/plain; charset="UTF-8"
> What I would like to know is, what solution you would prefer of the ones
I proposed 5 messages ago.
Obviously, I am for solution 5 (five).
On Tue, Jun 13, 2017 at 9:57 AM, Jakob Riedle <jakob.riedle@gmail.com>
wrote:
> Vishal Oza:
>
>> I would like to add another point this discussion.
>> I think we need 2d-vectors and 2d-matrix classes because they simplifies
>> the mathematical operations involved with 2d graphics.
>
> Yes, this is part of the problem that we face here.
>
> While we rename the 2d-vector as a point, I think this could lead novice
>> users to add 2 point together and get a new point but the mathematical
>> geometry doesn't make sense.
>
> So do you think renaming vector_2d to point_2d is a bad thing? Please
> explain yourself a little more in detail, you are depending on a few
> allusions that you don't explicite. Please do so.
>
>
>> This should not replace 2d graphics APIs unlike the stream libraries, but
>> rather a starting point for new C++ user to program 2d and 3d graphics.
>
> Sorry, what has graphics 2D to do with stream libraries, what analogy do
> you allude to?
>
>
> Dejan Milosavljevic:
>
>> This may be considered as off topic!
>>
>
> Thiago Macieira:
>
>> Where is operator+ for this type going to be defined?
>
>
>
> Yes, I would consider this as off topic... Your part of the conversation
> is not relevant to what we should do w.r.t issue "Graphics 2D Library
> Extension".
> [Note: I'm not saying it is irrelevant in general]
>
>
> *For me, this thread is about coming up with a set of opinions and
> conclusions on what should be done with the discussed part of the Graphics
> 2D Proposal**,*
> *NOT to primarily discuss how a Matrix/Vector Library should be
> implemented (for now at least!).*
> My Approach is, to first mail the outcomes in this thread to the proposers
> of the Graphics 2D LE.
> If this is not enough, I will try to write a proposal that suggests to
> rethink the Graphics 2D LE.
>
>
> What I would like to know is, what solution you would prefer of the ones I
> proposed 5 messages ago.
>
> Cheers,
> Jakob
>
> PS: I know, people - including me - tend to get very creative with the
> discussions in a particular thread and hence start proposing many Ideas on
> how we could extend C++ in this and that way,
> rather than focusing only on the topic discussed in a particular thread.
> In this case, I invite you to do the latter.
>
> --
> You received this message because you are subscribed to the Google Groups
> "ISO C++ Standard - Future Proposals" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to std-proposals+unsubscribe@isocpp.org.
> To post to this group, send email to std-proposals@isocpp.org.
> To view this discussion on the web visit https://groups.google.com/a/
> isocpp.org/d/msgid/std-proposals/89116eeb-c58b-4158-
> aa52-05735b21f9f5%40isocpp.org
> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/89116eeb-c58b-4158-aa52-05735b21f9f5%40isocpp.org?utm_medium=email&utm_source=footer>
> .
>
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAEfefmzwFv9iXrjPyu8cdVt7giBo6kR_SxuPVwHGJZzvA0dEBA%40mail.gmail.com.
--001a114426fedbf15f0551d3d261
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><span class=3D"gmail-gD" name=3D"Jakob Riedle"><div>> W=
hat I would like to know is, what solution you would prefer of the ones I p=
roposed 5 messages ago.</div><div>Obviously, I am for solution 5 (five).</d=
iv></span><div><br></div></div><div class=3D"gmail_extra"><br><div class=3D=
"gmail_quote">On Tue, Jun 13, 2017 at 9:57 AM, Jakob Riedle <span dir=3D"lt=
r"><<a href=3D"mailto:jakob.riedle@gmail.com" target=3D"_blank">jakob.ri=
edle@gmail.com</a>></span> wrote:<br><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div=
dir=3D"ltr"><div><div><span class=3D"m_168556663954941155_username" style=
=3D"white-space:nowrap"><span class=3D"m_168556663954941155IVILX2C-D-a m_16=
8556663954941155g-hovercard">Vishal Oza:</span></span><br></div><span><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;padding-left=
:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-s=
tyle:solid">I would like to add another point this discussion.<br>I think w=
e need 2d-vectors and 2d-matrix classes because they simplifies the mathema=
tical operations involved with 2d graphics.</blockquote></span><div>Yes, th=
is is part of the problem that we face here.</div><span><div><br></div><blo=
ckquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;padding-lef=
t:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-=
style:solid">While we rename the 2d-vector as a point, I think this could l=
ead novice users to add 2 point together and get a new point but the mathem=
atical geometry doesn't make sense.</blockquote></span><div>So do you t=
hink renaming vector_2d to point_2d is a bad thing? Please explain yourself=
a little more in detail, you are depending on a few allusions that you don=
't explicite. Please do so.</div><span><div>=C2=A0</div><blockquote cla=
ss=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;padding-left:1ex;borde=
r-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid=
">This should not replace 2d graphics APIs unlike the stream libraries, but=
rather a starting point for new C++ user to program 2d and 3d graphics.</b=
lockquote></span><div>Sorry, what has graphics 2D to do with stream librari=
es, what analogy do you allude to?</div></div><div><br></div><div><span sty=
le=3D"font-weight:bold;white-space:nowrap"><br></span></div><div><span styl=
e=3D"font-weight:bold;white-space:nowrap">Dejan Milosavljevic:</span>=C2=A0=
</div><span><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0=
..8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:=
1px;border-left-style:solid">This may be considered as off topic!<br></bloc=
kquote><div><br></div></span><div><span class=3D"m_168556663954941155_usern=
ame" style=3D"white-space:nowrap"><span class=3D"m_168556663954941155IVILX2=
C-D-a">Thiago Macieira:</span></span><br></div><span><blockquote class=3D"g=
mail_quote" style=3D"margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-=
color:rgb(204,204,204);border-left-width:1px;border-left-style:solid">Where=
is operator+ for this type going to be defined?=C2=A0</blockquote><div>=C2=
=A0</div><div><br></div></span><div>Yes, I would consider this as off topic=
....=C2=A0 Your part of the conversation is not relevant to what we should d=
o w.r.t issue "Graphics 2D Library Extension".</div><div>[Note: I=
'm not saying it is irrelevant in general]</div><div><br></div><div><br=
></div><div><b>For me, this thread is about coming up with a set of opinion=
s and conclusions on what should be done with the discussed part of the Gra=
phics 2D Proposal</b><b>,</b></div><div><b>NOT to primarily discuss how a M=
atrix/Vector Library should be implemented (for now at least!).</b></div><d=
iv>My Approach is, to first mail the outcomes in this thread to the propose=
rs of the Graphics 2D LE.</div><div>If this is not enough, I will try to wr=
ite a proposal that suggests to rethink the Graphics 2D LE.</div><div><br><=
/div><div><br></div><div>What I would like to know is, what solution you wo=
uld prefer of the ones I proposed 5 messages ago.</div><div><br></div><div>=
Cheers,</div><div>Jakob</div><div><br></div><div>PS: I know, people - inclu=
ding me - tend to get very creative with the discussions in a particular th=
read and hence start proposing many Ideas on how we could extend C++ in thi=
s and that way,</div><div>rather than focusing only on the topic discussed =
in a particular thread.</div><div>In this case, I invite you to do the latt=
er.</div><div><br></div></div><span>
<p></p>
-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org" target=3D"_=
blank">std-proposals+unsubscribe@<wbr>isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">std-proposals@isocpp.org</a>.<br></span>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/89116eeb-c58b-4158-aa52-05735b21f9f5%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter" target=3D"_blank">=
https://groups.google.com/a/<wbr>isocpp.org/d/msgid/std-<wbr>proposals/8911=
6eeb-c58b-4158-<wbr>aa52-05735b21f9f5%40isocpp.org</a><wbr>.<br>
</blockquote></div><br></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAEfefmzwFv9iXrjPyu8cdVt7giBo6kR_SxuP=
VwHGJZzvA0dEBA%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">htt=
ps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAEfefmzwFv9iXrjP=
yu8cdVt7giBo6kR_SxuPVwHGJZzvA0dEBA%40mail.gmail.com</a>.<br />
--001a114426fedbf15f0551d3d261--
.
Author: Thiago Macieira <thiago@macieira.org>
Date: Tue, 13 Jun 2017 10:11:46 -0700
Raw View
On ter=C3=A7a-feira, 13 de junho de 2017 09:55:53 PDT Vishal Oza wrote:
> Yes I think it is a bad thing rename at least 2dvector to point breaks th=
e
> math. A point in 2d space (but also in 3d space) is simple a set of
> coordinates. I think that this could lead to garabage models with no type
> safety like in C. What does it means to only ad a group of points togethe=
r
> without diving the them by a total numbers of point added. That is just a
> garabage model.
A point is identified by a vector and the origin of coordinate.
--=20
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
Software Architect - Intel Open Source Technology Center
--=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/10642023.RzGTXnXze6%40tjmaciei-mobl1.
.
Author: Tony V E <tvaneerd@gmail.com>
Date: Tue, 13 Jun 2017 13:31:40 -0400
Raw View
--001a114e3092feecbe0551daceaa
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
On Tue, Jun 13, 2017 at 1:11 PM, Thiago Macieira <thiago@macieira.org>
wrote:
> On ter=C3=A7a-feira, 13 de junho de 2017 09:55:53 PDT Vishal Oza wrote:
> > Yes I think it is a bad thing rename at least 2dvector to point breaks
> the
> > math. A point in 2d space (but also in 3d space) is simple a set of
> > coordinates. I think that this could lead to garabage models with no ty=
pe
> > safety like in C. What does it means to only ad a group of points
> together
> > without diving the them by a total numbers of point added. That is just=
a
> > garabage model.
>
>
A number is both a position on the number line and a measure (ie distance).
That isn't a garbage model.
Yes, it sometimes makes things ambiguous. Sometimes you should use
wrappers.
A good units library would be nice.
> A point is identified by a vector and the origin of coordinate.
>
And since the origin is (almost always) known, point =3D=3D vector.
--=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/CAOHCbitONJ3F5D%2BEokhLWOnzuG7YqLiRxpJyODh0FzYY%=
3D6FwNA%40mail.gmail.com.
--001a114e3092feecbe0551daceaa
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Tue, Jun 13, 2017 at 1:11 PM, Thiago Macieira <span dir=3D"ltr"><=
<a href=3D"mailto:thiago@macieira.org" target=3D"_blank">thiago@macieira.or=
g</a>></span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margi=
n:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex=
"><span class=3D"gmail-">On ter=C3=A7a-feira, 13 de junho de 2017 09:55:53 =
PDT Vishal Oza wrote:<br>
> Yes I think it is a bad thing rename at least 2dvector to point breaks=
the<br>
> math. A point in 2d space (but also in 3d space) is simple a set of<br=
>
> coordinates. I think that this could lead to garabage models with no t=
ype<br>
> safety like in C. What does it means to only ad a group of points toge=
ther<br>
> without diving the them by a total numbers of point added. That is jus=
t a<br>
> garabage model.<br>
<br></span></blockquote><div><br></div><div>A number is both a position on =
the number line and a measure (ie distance).<br></div><div>That isn't a=
garbage model.</div><div>Yes, it sometimes makes things ambiguous.=C2=A0 S=
ometimes you should use wrappers.</div><div>A good units library would be n=
ice.</div><div><br></div><div>=C2=A0</div><blockquote class=3D"gmail_quote"=
style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);p=
adding-left:1ex"><span class=3D"gmail-">
</span>A point is identified by a vector and the origin of coordinate.<br><=
/blockquote><div><br></div><div>And since the origin is (almost always) kno=
wn, point =3D=3D vector.</div><div><br></div><div><br></div></div>
</div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAOHCbitONJ3F5D%2BEokhLWOnzuG7YqLiRxp=
JyODh0FzYY%3D6FwNA%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter"=
>https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAOHCbitONJ3F=
5D%2BEokhLWOnzuG7YqLiRxpJyODh0FzYY%3D6FwNA%40mail.gmail.com</a>.<br />
--001a114e3092feecbe0551daceaa--
.
Author: Thiago Macieira <thiago@macieira.org>
Date: Tue, 13 Jun 2017 10:40:06 -0700
Raw View
On ter=C3=A7a-feira, 13 de junho de 2017 10:31:40 PDT Tony V E wrote:
> > A point is identified by a vector and the origin of coordinate.
>=20
> And since the origin is (almost always) known, point =3D=3D vector.
It's usually implicit, but if we wanted to be pedantic it could be a templa=
te=20
argument, in the same way that std::chrono::time_point is attached to a=20
specific clock.
--=20
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
Software Architect - Intel Open Source Technology Center
--=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/4124748.PGovm44pf7%40tjmaciei-mobl1.
.
Author: =?UTF-8?Q?Klaim_=2D_Jo=C3=ABl_Lamotte?= <mjklaim@gmail.com>
Date: Fri, 16 Jun 2017 17:06:52 +0200
Raw View
--001a11438352a8eb4905521522d4
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
On 13 June 2017 at 19:31, Tony V E <tvaneerd@gmail.com> wrote:
>
>
>> A point is identified by a vector and the origin of coordinate.
>>
>
> And since the origin is (almost always) known, point =3D=3D vector.
>
If you have a Point and want a translated Point from this original point,
you need an origin and a vector to do the translation. Even when
the first point is implicitely considered the origin, you still need a
vector
to describe the translation. The vector does not represent a point.
Assuming that point =3D=3D vector is like assuming that a physical position=
is
also a physical momentum.
It's just incorrect (like time_point is not a duration).
Jo=C3=ABl Lamotte
--=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/CAOU91OOMYLL%2BhriPpGF_Py6AQ4gX2i6%3DjkL5kRR4URM=
7Aj1Xgg%40mail.gmail.com.
--001a11438352a8eb4905521522d4
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><div class=3D"gmail_extra"><br><div class=3D"gmail_quote">=
On 13 June 2017 at 19:31, Tony V E <span dir=3D"ltr"><<a href=3D"mailto:=
tvaneerd@gmail.com" target=3D"_blank">tvaneerd@gmail.com</a>></span> wro=
te:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-=
left:1px #ccc solid;padding-left:1ex"><span class=3D""><div>=C2=A0</div><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-lef=
t:1px solid rgb(204,204,204);padding-left:1ex"><span class=3D"m_67283217405=
91542004gmail-">
</span>A point is identified by a vector and the origin of coordinate.<br><=
/blockquote><div><br></div></span><div>And since the origin is (almost alwa=
ys) known, point =3D=3D vector.</div></blockquote></div><br>If you have a P=
oint and want a translated Point from this original point,</div><div class=
=3D"gmail_extra">you need an origin and a vector to do the translation. Eve=
n when</div><div class=3D"gmail_extra">the first point is implicitely consi=
dered the origin, you still need a vector</div><div class=3D"gmail_extra">t=
o describe the translation. The vector does not represent a point.</div><di=
v class=3D"gmail_extra"><br></div><div class=3D"gmail_extra">Assuming that =
point =3D=3D vector is like assuming that a physical position is also a phy=
sical momentum.</div><div class=3D"gmail_extra">It's just incorrect (li=
ke time_point is not a duration).</div><div class=3D"gmail_extra"><br></div=
><div class=3D"gmail_extra">Jo=C3=ABl Lamotte</div><div class=3D"gmail_extr=
a"><br></div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAOU91OOMYLL%2BhriPpGF_Py6AQ4gX2i6%3D=
jkL5kRR4URM7Aj1Xgg%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter"=
>https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAOU91OOMYLL%=
2BhriPpGF_Py6AQ4gX2i6%3DjkL5kRR4URM7Aj1Xgg%40mail.gmail.com</a>.<br />
--001a11438352a8eb4905521522d4--
.
Author: Tony V E <tvaneerd@gmail.com>
Date: Sat, 17 Jun 2017 06:42:37 -0400
Raw View
<html><head></head><body lang=3D"en-US" style=3D"background-color: rgb(255,=
255, 255); line-height: initial;"> =
<div style=3D"width: 100%; fo=
nt-size: initial; font-family: Calibri, 'Slate Pro', sans-serif, sans-serif=
; color: rgb(31, 73, 125); text-align: initial; background-color: rgb(255, =
255, 255);">It is not incorrect. Mathematicians have been doing it for hund=
reds of years. </div><div style=3D"width: 100%; font-size: initial; fo=
nt-family: Calibri, 'Slate Pro', sans-serif, sans-serif; color: rgb(31, 73,=
125); text-align: initial; background-color: rgb(255, 255, 255);"><br></di=
v><div style=3D"width: 100%; font-size: initial; font-family: Calibri, 'Sla=
te Pro', sans-serif, sans-serif; color: rgb(31, 73, 125); text-align: initi=
al; background-color: rgb(255, 255, 255);">It can, however, lead to incorre=
ct code, if used incorrectly. </div><div style=3D"width: 100%; font-si=
ze: initial; font-family: Calibri, 'Slate Pro', sans-serif, sans-serif; col=
or: rgb(31, 73, 125); text-align: initial; background-color: rgb(255, 255, =
255);"><br></div><div style=3D"width: 100%; font-size: initial; font-family=
: Calibri, 'Slate Pro', sans-serif, sans-serif; color: rgb(31, 73, 125); te=
xt-align: initial; background-color: rgb(255, 255, 255);">But there are als=
o advantages to it. </div><div style=3D"width: 100%; font-size: initia=
l; font-family: Calibri, 'Slate Pro', sans-serif, sans-serif; color: rgb(31=
, 73, 125); text-align: initial; background-color: rgb(255, 255, 255);"><br=
></div><div style=3D"width: 100%; font-size: initial; font-family: Calibri,=
'Slate Pro', sans-serif, sans-serif; color: rgb(31, 73, 125); text-align: =
initial; background-color: rgb(255, 255, 255);">It's a trade off. </div><di=
v style=3D"width: 100%; font-size: initial; font-family: Calibri, 'Slate Pr=
o', sans-serif, sans-serif; color: rgb(31, 73, 125); text-align: initial; b=
ackground-color: rgb(255, 255, 255);"><br></div><div style=3D"width: 100%; =
font-size: initial; font-family: Calibri, 'Slate Pro', sans-serif, sans-ser=
if; color: rgb(31, 73, 125); text-align: initial; background-color: rgb(255=
, 255, 255);"><br></div> =
=
<div s=
tyle=3D"font-size: initial; font-family: Calibri, 'Slate Pro', sans-serif, =
sans-serif; color: rgb(31, 73, 125); text-align: initial; background-color:=
rgb(255, 255, 255);">Sent from my BlackBerry portable&=
nbsp;Babbage Device</div> =
=
<table width=3D"1=
00%" style=3D"background-color:white;border-spacing:0px;"> <tbody><tr><td c=
olspan=3D"2" style=3D"font-size: initial; text-align: initial; background-c=
olor: rgb(255, 255, 255);"> <div style=3D"border-=
style: solid none none; border-top-color: rgb(181, 196, 223); border-top-wi=
dth: 1pt; padding: 3pt 0in 0in; font-family: Tahoma, 'BB Alpha Sans', 'Slat=
e Pro'; font-size: 10pt;"> <div><b>From: </b>Klaim - Jo=C3=ABl Lamotte</di=
v><div><b>Sent: </b>Friday, June 16, 2017 11:06 AM</div><div><b>To: </b>std=
-proposals@isocpp.org</div><div><b>Reply To: </b>std-proposals@isocpp.org</=
div><div><b>Subject: </b>Re: [std-proposals] Re: Why do we include a Matrix=
and Vector class into the proposed 2D Graphics Library?</div></div></td></=
tr></tbody></table><div style=3D"border-style: solid none none; border-top-=
color: rgb(186, 188, 209); border-top-width: 1pt; font-size: initial; text-=
align: initial; background-color: rgb(255, 255, 255);"></div><br><div id=3D=
"_originalContent" style=3D""><div dir=3D"ltr"><div class=3D"gmail_extra"><=
br><div class=3D"gmail_quote">On 13 June 2017 at 19:31, Tony V E <span dir=
=3D"ltr"><<a href=3D"mailto:tvaneerd@gmail.com" target=3D"_blank">tvanee=
rd@gmail.com</a>></span> wrote:<br><blockquote class=3D"gmail_quote" sty=
le=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span =
class=3D""><div> </div><blockquote class=3D"gmail_quote" style=3D"marg=
in:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1e=
x"><span class=3D"m_6728321740591542004gmail-">
</span>A point is identified by a vector and the origin of coordinate.<br><=
/blockquote><div><br></div></span><div>And since the origin is (almost alwa=
ys) known, point =3D=3D vector.</div></blockquote></div><br>If you have a P=
oint and want a translated Point from this original point,</div><div class=
=3D"gmail_extra">you need an origin and a vector to do the translation. Eve=
n when</div><div class=3D"gmail_extra">the first point is implicitely consi=
dered the origin, you still need a vector</div><div class=3D"gmail_extra">t=
o describe the translation. The vector does not represent a point.</div><di=
v class=3D"gmail_extra"><br></div><div class=3D"gmail_extra">Assuming that =
point =3D=3D vector is like assuming that a physical position is also a phy=
sical momentum.</div><div class=3D"gmail_extra">It's just incorrect (like t=
ime_point is not a duration).</div><div class=3D"gmail_extra"><br></div><di=
v class=3D"gmail_extra">Jo=C3=ABl Lamotte</div><div class=3D"gmail_extra"><=
br></div></div>
<p></p>
-- <br>
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAOU91OOMYLL%2BhriPpGF_Py6AQ4gX2i6%3D=
jkL5kRR4URM7Aj1Xgg%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfoo=
ter">https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAOU91OOM=
YLL%2BhriPpGF_Py6AQ4gX2i6%3DjkL5kRR4URM7Aj1Xgg%40mail.gmail.com</a>.<br>
<br><!--end of _originalContent --></div></body></html>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/20170617104237.5132345.12582.31348%40=
gmail.com?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.com=
/a/isocpp.org/d/msgid/std-proposals/20170617104237.5132345.12582.31348%40gm=
ail.com</a>.<br />
.
Author: Dejan Milosavljevic <dmilos@gmail.com>
Date: Thu, 22 Jun 2017 09:29:32 +0200
Raw View
--001a114426fe307ecf055287728e
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
> It's just incorrect (like time_point is not a duration).
Excellent example.
*Vector*(mathematics) can be defined as *set*(mathematics) of oriented line
segments which have same direction and length.
See: https://en.wikipedia.org/wiki/Euclidean_vector.
For easy manipulation we use one represent from this set. This represent
can be presented by using same *data structure*( c++ ) as point.
point=3Dvector+point; //!< OK
point=3Dpoint+vector; //!< OK
vector=3Dvector+vector; //!< OK
???=3Dpoint+point; //!< Nonsense
On Sat, Jun 17, 2017 at 12:42 PM, Tony V E <tvaneerd@gmail.com> wrote:
> It is not incorrect. Mathematicians have been doing it for hundreds of
> years.
>
> It can, however, lead to incorrect code, if used incorrectly.
>
> But there are also advantages to it.
>
> It's a trade off.
>
>
> Sent from my BlackBerry portable Babbage Device
> *From: *Klaim - Jo=C3=ABl Lamotte
> *Sent: *Friday, June 16, 2017 11:06 AM
> *To: *std-proposals@isocpp.org
> *Reply To: *std-proposals@isocpp.org
> *Subject: *Re: [std-proposals] Re: Why do we include a Matrix and Vector
> class into the proposed 2D Graphics Library?
>
>
> On 13 June 2017 at 19:31, Tony V E <tvaneerd@gmail.com> wrote:
>
>>
>>
>>> A point is identified by a vector and the origin of coordinate.
>>>
>>
>> And since the origin is (almost always) known, point =3D=3D vector.
>>
>
> If you have a Point and want a translated Point from this original point,
> you need an origin and a vector to do the translation. Even when
> the first point is implicitely considered the origin, you still need a
> vector
> to describe the translation. The vector does not represent a point.
>
> Assuming that point =3D=3D vector is like assuming that a physical positi=
on is
> also a physical momentum.
> It's just incorrect (like time_point is not a duration).
>
> Jo=C3=ABl Lamotte
>
> --
> You received this message because you are subscribed to the Google Groups
> "ISO C++ Standard - Future Proposals" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to std-proposals+unsubscribe@isocpp.org.
> To post to this group, send email to std-proposals@isocpp.org.
> To view this discussion on the web visit https://groups.google.com/a/
> isocpp.org/d/msgid/std-proposals/CAOU91OOMYLL%2BhriPpGF_Py6AQ4gX2i6%
> 3DjkL5kRR4URM7Aj1Xgg%40mail.gmail.com
> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAOU91OOMYL=
L%2BhriPpGF_Py6AQ4gX2i6%3DjkL5kRR4URM7Aj1Xgg%40mail.gmail.com?utm_medium=3D=
email&utm_source=3Dfooter>
> .
>
> --
> You received this message because you are subscribed to the Google Groups
> "ISO C++ Standard - Future Proposals" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to std-proposals+unsubscribe@isocpp.org.
> To post to this group, send email to std-proposals@isocpp.org.
> To view this discussion on the web visit https://groups.google.com/a/
> isocpp.org/d/msgid/std-proposals/20170617104237.
> 5132345.12582.31348%40gmail.com
> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/20170617104=
237.5132345.12582.31348%40gmail.com?utm_medium=3Demail&utm_source=3Dfooter>
> .
>
--=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/CAEfefmwTozoD%2BS_6cqY_HVHTFeqDn5C1eorq8ibajKbHq=
7HpCw%40mail.gmail.com.
--001a114426fe307ecf055287728e
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><div>> It's just incorrect (like time_point is not =
a duration).</div><div>Excellent example.</div><div><br></div><div><em>Vect=
or</em>(mathematics) can be defined as <strong>set</strong>(mathematics) of=
=C2=A0oriented line segments which have same direction and length. </div><d=
iv>See: <a href=3D"https://en.wikipedia.org/wiki/Euclidean_vector">https://=
en.wikipedia.org/wiki/Euclidean_vector</a>. </div><div>For easy manipulatio=
n=C2=A0we use=C2=A0one represent from this set. This represent can be prese=
nted by using same <u>data structure</u>( c++ ) as point.</div><div><br></d=
iv><div>point=3Dvector+point; //!< OK</div><div>point=3Dpoint+vector; //=
!< OK</div><div><div>vector=3Dvector+vector; //!< OK</div><div><div><=
div>???=3Dpoint+point; //!< Nonsense</div><div><br></div></div></div><di=
v><br></div></div></div><div class=3D"gmail_extra"><br><div class=3D"gmail_=
quote">On Sat, Jun 17, 2017 at 12:42 PM, Tony V E <span dir=3D"ltr"><<a =
href=3D"mailto:tvaneerd@gmail.com" target=3D"_blank">tvaneerd@gmail.com</a>=
></span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0=
0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang=3D"en-US" st=
yle=3D"background-color:rgb(255,255,255)"> =
<div style=3D"width:10=
0%;color:rgb(31,73,125);font-family:Calibri,"Slate Pro",sans-seri=
f,sans-serif;background-color:rgb(255,255,255)">It is not incorrect. Mathem=
aticians have been doing it for hundreds of years.=C2=A0</div><div style=3D=
"width:100%;color:rgb(31,73,125);font-family:Calibri,"Slate Pro",=
sans-serif,sans-serif;background-color:rgb(255,255,255)"><br></div><div sty=
le=3D"width:100%;color:rgb(31,73,125);font-family:Calibri,"Slate Pro&q=
uot;,sans-serif,sans-serif;background-color:rgb(255,255,255)">It can, howev=
er, lead to incorrect code, if used incorrectly.=C2=A0</div><div style=3D"w=
idth:100%;color:rgb(31,73,125);font-family:Calibri,"Slate Pro",sa=
ns-serif,sans-serif;background-color:rgb(255,255,255)"><br></div><div style=
=3D"width:100%;color:rgb(31,73,125);font-family:Calibri,"Slate Pro&quo=
t;,sans-serif,sans-serif;background-color:rgb(255,255,255)">But there are a=
lso advantages to it.=C2=A0</div><div style=3D"width:100%;color:rgb(31,73,1=
25);font-family:Calibri,"Slate Pro",sans-serif,sans-serif;backgro=
und-color:rgb(255,255,255)"><br></div><div style=3D"width:100%;color:rgb(31=
,73,125);font-family:Calibri,"Slate Pro",sans-serif,sans-serif;ba=
ckground-color:rgb(255,255,255)">It's a trade off. </div><div style=3D"=
width:100%;color:rgb(31,73,125);font-family:Calibri,"Slate Pro",s=
ans-serif,sans-serif;background-color:rgb(255,255,255)"><br></div><div styl=
e=3D"width:100%;color:rgb(31,73,125);font-family:Calibri,"Slate Pro&qu=
ot;,sans-serif,sans-serif;background-color:rgb(255,255,255)"><br></div> =
=
=
<div style=3D"color:rgb(31,73,125)=
;font-family:Calibri,"Slate Pro",sans-serif,sans-serif;background=
-color:rgb(255,255,255)">Sent=C2=A0from=C2=A0my=C2=A0BlackBerry=C2=A0<wbr>p=
ortable=C2=A0Babbage=C2=A0Device</div> =
=
<table wi=
dth=3D"100%" style=3D"border-spacing:0px;background-color:white"> <tbody><t=
r><td style=3D"background-color:rgb(255,255,255)" colspan=3D"2"> =
<div style=3D"border-style:solid none none;padding:3pt 0in =
0in;font-family:Tahoma,"BB Alpha Sans","Slate Pro";font=
-size:10pt;border-top-color:rgb(181,196,223);border-top-width:1pt"> <div><=
b>From: </b>Klaim - Jo=C3=ABl Lamotte</div><div><b>Sent: </b>Friday, June 1=
6, 2017 11:06 AM</div><div><b>To: </b><a href=3D"mailto:std-proposals@isocp=
p.org" target=3D"_blank">std-proposals@isocpp.org</a></div><div><b>Reply To=
: </b><a href=3D"mailto:std-proposals@isocpp.org" target=3D"_blank">std-pro=
posals@isocpp.org</a></div><div><b>Subject: </b>Re: [std-proposals] Re: Why=
do we include a Matrix and Vector class into the proposed 2D Graphics Libr=
ary?</div></div></td></tr></tbody></table><div><div class=3D"h5"><div style=
=3D"border-style:solid none none;border-top-color:rgb(186,188,209);border-t=
op-width:1pt;background-color:rgb(255,255,255)"></div><br><div id=3D"m_9135=
280328304071615_originalContent"><div dir=3D"ltr"><div class=3D"gmail_extra=
"><br><div class=3D"gmail_quote">On 13 June 2017 at 19:31, Tony V E <span d=
ir=3D"ltr"><<a href=3D"mailto:tvaneerd@gmail.com" target=3D"_blank">tvan=
eerd@gmail.com</a>></span> wrote:<br><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204=
,204,204);border-left-width:1px;border-left-style:solid"><span><div>=C2=A0<=
/div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;pa=
dding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;bor=
der-left-style:solid"><span class=3D"m_9135280328304071615m_672832174059154=
2004gmail-">
</span>A point is identified by a vector and the origin of coordinate.<br><=
/blockquote><div><br></div></span><div>And since the origin is (almost alwa=
ys) known, point =3D=3D vector.</div></blockquote></div><br>If you have a P=
oint and want a translated Point from this original point,</div><div class=
=3D"gmail_extra">you need an origin and a vector to do the translation. Eve=
n when</div><div class=3D"gmail_extra">the first point is implicitely consi=
dered the origin, you still need a vector</div><div class=3D"gmail_extra">t=
o describe the translation. The vector does not represent a point.</div><di=
v class=3D"gmail_extra"><br></div><div class=3D"gmail_extra">Assuming that =
point =3D=3D vector is like assuming that a physical position is also a phy=
sical momentum.</div><div class=3D"gmail_extra">It's just incorrect (li=
ke time_point is not a duration).</div><div class=3D"gmail_extra"><br></div=
><div class=3D"gmail_extra">Jo=C3=ABl Lamotte</div><div class=3D"gmail_extr=
a"><br></div></div>
<p></p>
-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org" target=3D"_=
blank">std-proposals+unsubscribe@<wbr>isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">std-proposals@isocpp.org</a>.<br>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAOU91OOMYLL%2BhriPpGF_Py6AQ4gX2i6%3D=
jkL5kRR4URM7Aj1Xgg%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfoo=
ter" target=3D"_blank">https://groups.google.com/a/<wbr>isocpp.org/d/msgid/=
std-<wbr>proposals/CAOU91OOMYLL%<wbr>2BhriPpGF_Py6AQ4gX2i6%<wbr>3DjkL5kRR4U=
RM7Aj1Xgg%40mail.<wbr>gmail.com</a>.<br>
<br></div></div></div></div><div><div class=3D"h5">
<p></p>
-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org" target=3D"_=
blank">std-proposals+unsubscribe@<wbr>isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">std-proposals@isocpp.org</a>.<br></div></div>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/20170617104237.5132345.12582.31348%40=
gmail.com?utm_medium=3Demail&utm_source=3Dfooter" target=3D"_blank">htt=
ps://groups.google.com/a/<wbr>isocpp.org/d/msgid/std-<wbr>proposals/2017061=
7104237.<wbr>5132345.12582.31348%40gmail.<wbr>com</a>.<br>
</blockquote></div><br></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAEfefmwTozoD%2BS_6cqY_HVHTFeqDn5C1eo=
rq8ibajKbHq7HpCw%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">h=
ttps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAEfefmwTozoD%2=
BS_6cqY_HVHTFeqDn5C1eorq8ibajKbHq7HpCw%40mail.gmail.com</a>.<br />
--001a114426fe307ecf055287728e--
.