220 19162 <CAE+wLFBX2NByqyJ36jmCciy876+aV-jzcqDxMxJXrh9_TR4wEg@mail.gmail.com> article
Path: news.gmane.org!not-for-mail
From: David Haim <dhayim1@gmail.com>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Re: Point class
Date: Wed, 22 Jul 2015 09:53:10 -0700
Lines: 86
Approved: news@gmane.org
Message-ID: <CAE+wLFBX2NByqyJ36jmCciy876+aV-jzcqDxMxJXrh9_TR4wEg@mail.gmail.com>
References: <beb0ccd3-3537-4c3a-a8a9-98aa2fe2a029@isocpp.org>
	<mooeku$du2$1@ger.gmane.org>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: plane.gmane.org
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
X-Trace: ger.gmane.org 1437584000 4400 80.91.229.3 (22 Jul 2015 16:53:20 GMT)
X-Complaints-To: usenet@ger.gmane.org
NNTP-Posting-Date: Wed, 22 Jul 2015 16:53:20 +0000 (UTC)
To: std-proposals@isocpp.org
Original-X-From: std-proposals+bncBCPLZIX24MDRB54UX6WQKGQEORQ4KPQ@isocpp.org Wed Jul 22 18:53:14 2015
Return-path: <std-proposals+bncBCPLZIX24MDRB54UX6WQKGQEORQ4KPQ@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-wi0-f198.google.com ([209.85.212.198])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <std-proposals+bncBCPLZIX24MDRB54UX6WQKGQEORQ4KPQ@isocpp.org>)
	id 1ZHxGb-0003vA-5s
	for gclcip-std-proposals@m.gmane.org; Wed, 22 Jul 2015 18:53:13 +0200
Original-Received: by wixh2 with SMTP id h2sf28859966wix.0
        for <gclcip-std-proposals@m.gmane.org>; Wed, 22 Jul 2015 09:53:12 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20130820;
        h=x-gm-message-state:mime-version:in-reply-to:references:date
         :message-id:subject:from:to:content-type:x-original-sender
         :x-original-authentication-results:reply-to:precedence:mailing-list
         :list-id:x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=wmGKgflKXRQR6VVo14+80gPvxW+2c6CFEePcngWM87M=;
        b=TTI9Ilcub+LFJzjQSNUMmP23OMdS+gx8MW8RfKy67Jy/zeV6r1NYmTPz4oB4eTi/VD
         M1Y+uAbv19YyvR8+F4N0Xn60DvuZ8BDib/C7LjRLjf8USh/5F9FJDjvQU3JNbtDw054P
         ynwEehPbFjCm8jttZNTF64JbGa8C0BO0EKVKpsVHtDFWJ/BPDqUnW7W0hjBc2bqlwL5i
         tcKgNd8ZmPcQZX42uf84CldEWwYdFVG9Q7VPWUXgN2cPX2XVyagm6saKuRddIO4LtXhm
         f8+bW+froEZ06te85Pudar9OxWz3AzNIpok2RG6QiPr+PaOwPMot5cLZrWyguPOL+yRk
         WS0w==
X-Gm-Message-State: ALoCoQmu5Y4nq++RFvVOg0tMuxtA9GIZpQ4Okrvspm+4XGdUhVTyj5r5/i0zJx/yeuycOltV1RN3
X-Received: by 10.180.182.49 with SMTP id eb17mr11959758wic.2.1437583992592;
        Wed, 22 Jul 2015 09:53:12 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.180.83.102 with SMTP id p6ls208138wiy.39.gmail; Wed, 22 Jul
 2015 09:53:10 -0700 (PDT)
X-Received: by 10.194.63.20 with SMTP id c20mr7557181wjs.134.1437583990935;
        Wed, 22 Jul 2015 09:53:10 -0700 (PDT)
Original-Received: from mail-wi0-x229.google.com (mail-wi0-x229.google.com. [2a00:1450:400c:c05::229])
        by mx.google.com with ESMTPS id fx1si4540976wic.87.2015.07.22.09.53.10
        for <std-proposals@isocpp.org>
        (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Wed, 22 Jul 2015 09:53:10 -0700 (PDT)
Received-SPF: pass (google.com: domain of dhayim1@gmail.com designates 2a00:1450:400c:c05::229 as permitted sender) client-ip=2a00:1450:400c:c05::229;
Original-Received: by wibxm9 with SMTP id xm9so111771531wib.1
        for <std-proposals@isocpp.org>; Wed, 22 Jul 2015 09:53:10 -0700 (PDT)
X-Received: by 10.194.23.225 with SMTP id p1mr7264423wjf.155.1437583990517;
 Wed, 22 Jul 2015 09:53:10 -0700 (PDT)
Original-Received: by 10.28.88.21 with HTTP; Wed, 22 Jul 2015 09:53:10 -0700 (PDT)
In-Reply-To: <mooeku$du2$1@ger.gmane.org>
X-Original-Sender: Dhayim1@gmail.com
X-Original-Authentication-Results: mx.google.com;       spf=pass (google.com:
 domain of dhayim1@gmail.com designates 2a00:1450:400c:c05::229 as permitted
 sender) smtp.mail=dhayim1@gmail.com;       dkim=pass header.i=@gmail.com;
       dmarc=pass (p=NONE dis=NONE) header.from=gmail.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Spam-Checked-In-Group: std-proposals@isocpp.org
X-Google-Group-Id: 399137483710
List-Post: <http://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <http://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <http://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <http://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>,
 <http://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:19162
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/19162>

Hi Methew, thank you for your reply.
I was thinking about a template class that looks like this :

template <class T, unsigned int dimension,
typename=std::enable_if<std::is_arithmetic<T>::value,T>::type >
class Point{...}

here, the developer specify both his wanted precision and the dimension of
the Cartesian plane.

about the Eigen class:
well, this is a philosophical question. isn't C++11 borrows heavily from
boost type_traits and thread library? didn't we already have some platforms
and libraries with Thread class in them?  there are many I can think of.
MFC is one of them (for windows).
isn't C++17 is going to borrow heavily from boost networking library and
filesystem library?
does the fact that something already exists outside the standard is enough
to cancel it's standardization? I think the opposite. the fact there there
are many platforms and libraries outside that implement Point class only
proves its necessity.
the standard basically says "we have reviewed this proposal and approved it
for general use. this is an approved C++ feature to use",



2015-07-22 8:59 GMT-07:00, Matthew Woehlke <mwoehlke.floss@gmail.com>:
> On 2015-07-22 11:23, dhayim1@gmail.com wrote:
>> Hello C++ community.
>> I was wondering if anyone had proposed a Cartesian coordinate system -
>> based Point class.
>> This (basic yet effective) class will represent points in a N dimensional
>>
>> Cartesian coordinate system and the actions you can preform at.
>> If this class has being proposed before and declined, I would like to get
>>
>> links on the proposal and the reason why it got declined.
>> If it has being proposed and currently it is being discussed (for example,
>>
>> by the Graphics research team), can I get a link to the proposal.
>> If it has not being proposed at all, I'd like to hear if this class can be
>>
>> proposed by me, and what are the needed steps to propose such library.
>
> I suspect the big problem here is deciding what features to include.
> There is a huge array of possibilities ranging from "none" ('struct
> point { double x, y };') to quaternion transforms and other complicated
> things. To little, and it isn't useful. Too much and a stand-alone
> library is a better solution... and these already exist, e.g. Eigen.
> Plus it's such a common class that many libraries have already
> implemented such a class, and getting them to converge on a common
> implementation is going to be a challenge.
>
> (And TBH, this is why I want generalized tuple unpacking; it makes it
> much easier to convert between different libraries' point types.)
>
> Don't forget also that you're going to have folks wanting both double
> and float (and possibly long double) precision, so it's not just the
> dimensionality that should be a template parameter. And, again, we
> already have a full-featured library for that: Eigen.
>
> --
> Matthew
>
> --
>
> ---
> You received this message because you are subscribed to a topic in the
> Google Groups "ISO C++ Standard - Future Proposals" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/a/isocpp.org/d/topic/std-proposals/jkY2NskIg1E/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> std-proposals+unsubscribe@isocpp.org.
> To post to this group, send email to std-proposals@isocpp.org.
> Visit this group at
> http://groups.google.com/a/isocpp.org/group/std-proposals/.
>

-- 

--- 
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.
Visit this group at http://groups.google.com/a/isocpp.org/group/std-proposals/.

.
