Menu

C++ Robustness vs. Java (Coordinate Conversion Support)

2014-07-28
2014-08-07
  • Joe Hoffert

    Joe Hoffert - 2014-07-28

    Hi.

    I've used the Open-DIS Java version which is quite good. I now need to use the C++ version. I was trying to find the C++ corollary to CoordinateConversions.java but with no success. Is the Open-DIS C++ just not as robust as it is for Java? Or am I missing where other Open-DIS C++ files are (e.g., the example EspduSender.java, CoordinateConversions.java)?

    Thanks for your help!

    -Joe

     
    • Don McGregor

      Don McGregor - 2014-07-28

      I don’t think I’ve done the C++ equivalents of that (or rather the C++ people haven’t contributed that.)

      The “CoordinateConversion” class does the lat/long to geocentric conversion manually, i.e. with
      a bunch of trig that I copied from some old fortran code. You can convert that to C++, or
      the better solution is to use the Sedris Spatial Reference Model (SRM) library that does much better and more general
      coordinate conversions.

      http://www.sedris.org/srm_desc.htm
      http://www.sedris.org/hdr1trpl.htm

      Figuring out Sedris SRM takes some head-scratching, but the people who did it are
      pretty smart and it can do all sorts of things, like convert from a reference frame in a local
      entity embedded in a local coordinate system to a geocentric coordinate system or lat/lon/alt,
      do orientation conversions, and so on.

      On Jul 28, 2014, at 2:38 PM, Joe Hoffert jhoffert2@users.sf.netamp#106;amp#104;amp#111;amp#102;amp#102;amp#101;amp#114;amp#116;amp#50;amp#64;amp#117;amp#115;amp#101;amp#114;amp#115;amp#46;amp#115;amp#102;amp#46;amp#110;amp#101;amp#116; wrote:

      Hi.

      I've used the Open-DIS Java version which is quite good. I now need to use the C++ version. I was trying to find the C++ corollary to CoordinateConversions.java but with no success. Is the Open-DIS C++ just not as robust as it is for Java? Or am I missing where other Open-DIS C++ files are (e.g., the example EspduSender.java, CoordinateConversions.java)?

      Thanks for your help!

      -Joe


      C++ Robustness vs. Java (Coordinate Conversion Support)https://sourceforge.net/p/open-dis/discussion/general/thread/83a30ae1/?limit=25#1e02


      Sent from sourceforge.nethttp://sourceforge.net because you indicated interest in https://sourceforge.net/p/open-dis/discussion/general/https://sourceforge.net/p/open-dis/discussion/general

      To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/https://sourceforge.net/auth/subscriptions

       
      • Joe Hoffert

        Joe Hoffert - 2014-07-29

        Thanks for the update, Don. I was able to make a C++ version of CoordinateConversions fairly easily. I wanted to make sure I wasn't missing something (i.e., more Open-DIS C++ classes and examples someplace). I suppose the C++ version of Open-DIS will always lag the Java version.

        I'll look into the Sedris SRM as the need arises.

        Thanks, again!

         
        • Don McGregor

          Don McGregor - 2014-07-29

          That’s probably a fair statement—I don’t work much in C++, and do a lot more in Java, and, these
          days, Javascript. If you can send me your CoordinateConversion class I’ll check it into the svn repo.

          The Javascript implementation is pretty compelling. IEEE DIS straight into the web browser
          via Websockets and WebRTC, thousands of PDUs per second, access to google maps
          and other web-based technology, 3D via WebGL, etc.

          On Jul 29, 2014, at 5:54 AM, Joe Hoffert jhoffert2@users.sf.netamp#106;amp#104;amp#111;amp#102;amp#102;amp#101;amp#114;amp#116;amp#50;amp#64;amp#117;amp#115;amp#101;amp#114;amp#115;amp#46;amp#115;amp#102;amp#46;amp#110;amp#101;amp#116; wrote:

          Thanks for the update, Don. I was able to make a C++ version of CoordinateConversions fairly easily. I wanted to make sure I wasn't missing something (i.e., more Open-DIS C++ classes and examples someplace). I suppose the C++ version of Open-DIS will always lag the Java version.

          I'll look into the Sedris SRM as the need arises.

          Thanks, again!


          C++ Robustness vs. Java (Coordinate Conversion Support)https://sourceforge.net/p/open-dis/discussion/general/thread/83a30ae1/?limit=25#1e02/9e2b/f4db


          Sent from sourceforge.nethttp://sourceforge.net because you indicated interest in https://sourceforge.net/p/open-dis/discussion/general/https://sourceforge.net/p/open-dis/discussion/general

          To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/https://sourceforge.net/auth/subscriptions

           
          • Joe Hoffert

            Joe Hoffert - 2014-08-02

            I'm interested in the C++ version because I'm working for a Naval Surface Warfare Center that is suspicious/closed to open-source code and JVMs. (I'm not widely proclaiming the name "Open-DIS". Instead, I'm saying NPS-developed software. Sometimes the issues to be addressed are not technical. :-/)

            Also, other related development is being done in C/C++ and integration with Java is not smooth, easy, or fun (at least not when I did this kind of integration a few years back and it doesn't look like much has changed since).

            The Java version is awesome (especially with Eclipse) and I'd prefer to go that route as a CS/software engineering type. However, I have to defer to my customers. I'll send the C++ CoordinateConversions.{h,cpp} files separately.

            BTW, I was looking for a C++ version of the DIS enum library. I guess one's not available (i.e., only available in Java). Is it easy to generate one with XMLpg? I'm looking into that but if you know it's a dead-end would you please let me know?

            Thanks!

             
            • Don McGregor

              Don McGregor - 2014-08-04

              It’s hard to gauge relative interest in the language implementations because enough people are
              doing secret squirrel or company-proprietary stuff that they don’t want to talk about it. What’s really needed is someone
              who works with the C++ version a lot undertaking to maintain it.

              The Java version of enums is dated, too—SISO changed the format of the underlying XML structure
              of the EBV document out from under me, and I haven’t gotten around to rewriting the code that converts
              from the new XML representation to Java enumerations.

              There is a C++ enumerations library checked into subversion at
              open-dis-code/utilities/Enumerations/src/main/cpp/disenum,
              e.g.

              ifndef PROTOCOLFAMILY__H

              define PROTOCOLFAMILY__H

              include <string></string>

              include <disenum enumeration.h=""></disenum>

              namespace DIS {

              class ProtocolFamily : public Enumeration {
              public:
              static ProtocolFamily OTHER;
              static ProtocolFamily ENTITY_INFORMATION_INTERACTION;
              static ProtocolFamily WARFARE;
              static ProtocolFamily LOGISTICS;

              On Aug 2, 2014, at 10:18 AM, Joe Hoffert jhoffert2@users.sf.netamp#106;amp#104;amp#111;amp#102;amp#102;amp#101;amp#114;amp#116;amp#50;amp#64;amp#117;amp#115;amp#101;amp#114;amp#115;amp#46;amp#115;amp#102;amp#46;amp#110;amp#101;amp#116; wrote:

              I'm interested in the C++ version because I'm working for a Naval Surface Warfare Center that is suspicious/closed to open-source code and JVMs. (I'm not widely proclaiming the name "Open-DIS". Instead, I'm saying NPS-developed software. Sometimes the issues to be addressed are not technical. :-/)

              Also, other related development is being done in C/C++ and integration with Java is not smooth, easy, or fun (at least not when I did this kind of integration a few years back and it doesn't look like much has changed since).

              The Java version is awesome (especially with Eclipse) and I'd prefer to go that route as a CS/software engineering type. However, I have to defer to my customers. I'll send the C++ CoordinateConversions.{h,cpp} files separately.

              BTW, I was looking for a C++ version of the DIS enum library. I guess one's not available (i.e., only available in Java). Is it easy to generate one with XMLpg? I'm looking into that but if you know it's a dead-end would you please let me know?

              Thanks!


              C++ Robustness vs. Java (Coordinate Conversion Support)https://sourceforge.net/p/open-dis/discussion/general/thread/83a30ae1/?limit=25#1e02/9e2b/f4db/afc9/ee96


              Sent from sourceforge.nethttp://sourceforge.net because you indicated interest in https://sourceforge.net/p/open-dis/discussion/general/https://sourceforge.net/p/open-dis/discussion/general

              To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/https://sourceforge.net/auth/subscriptions

               
              • Joe Hoffert

                Joe Hoffert - 2014-08-07

                Don, would you please send me the entire URL for the CPP disenum files you mentioned above? (I'm not sure of the svn server, trunk, etc.) Thanks!

                 
  • Joe Hoffert

    Joe Hoffert - 2014-08-02

    Attached are the C++ CoordinateConversions files. Feel free to modify.

     
MongoDB Logo MongoDB