Arcball-Graphics-Package | Improved Arcball Implementation with quaternion class

 by   mattie20 C++ Version: Current License: Apache-2.0

kandi X-RAY | Arcball-Graphics-Package Summary

kandi X-RAY | Arcball-Graphics-Package Summary

Arcball-Graphics-Package is a C++ library. Arcball-Graphics-Package has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.

SAP is a simple header only library containing a templated quaternion implementation, a arcball implementation ( improved over traditional arcball, see white paper in repo), and a few other functions required to create MVP matricies. The library is written to be auto-vectorized when possible with the appropriate auto-vectorization flags per compiler. Unit testing implemented with doctest.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              Arcball-Graphics-Package has a low active ecosystem.
              It has 0 star(s) with 0 fork(s). There are 1 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              Arcball-Graphics-Package has no issues reported. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of Arcball-Graphics-Package is current.

            kandi-Quality Quality

              Arcball-Graphics-Package has no bugs reported.

            kandi-Security Security

              Arcball-Graphics-Package has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              Arcball-Graphics-Package is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              Arcball-Graphics-Package releases are not available. You will need to build from source code and install.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of Arcball-Graphics-Package
            Get all kandi verified functions for this library.

            Arcball-Graphics-Package Key Features

            No Key Features are available at this moment for Arcball-Graphics-Package.

            Arcball-Graphics-Package Examples and Code Snippets

            No Code Snippets are available at this moment for Arcball-Graphics-Package.

            Community Discussions

            No Community Discussions are available at this moment for Arcball-Graphics-Package.Refer to stack overflow page for discussions.

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install Arcball-Graphics-Package

            This is an example of common usage of the library. I've tried to make the functionality as self-evident and obvious as possible. Set With Euler Angles. Multiply a Matrix with Another Matrix Transposed. Cross Product of two 3 Dimensional Vectors. Normalize a 3 Dimensional Vector. Prints a 4x4 matrix. Calculate Magnitude of a Vec3. Calculate Difference of a Vec3.
            Initalizaiton arcball arc; arc.SetCamera(camera, up_vector); arc.SetCenter(center_pos); arc.SetViewArea(window_width,window_height); // can omit these if okay with default values arc.SetProjectionVars(fov, z_near, z_far); arc.rotate_sensitivity = 0.004; arc.zoom_sensitivity = 0.2; arc.zoom_translate_sensitivity = 0.1;
            Rotate Function if(is_scroll_clicked){ arc.Rotate(mouse_delta_x, mouse_delta_y); camera_pos = arc.Camera(); // If Needed for Shader click_delta_x = 0; click_delta_y = 0; }
            Zoom Function if(is_scrolled){ // Distance From Center of Screen. Left and Up are Positive // Float Type Because of Possible Subpixel Resolution From OS float dis_x = 0.5*window_width - mouse_x; float dis_y = 0.5*window_height - mouse_y; arc.Zoom(dis_x, dis_y, scroll_ammount); camera_pos = arc.Camera(); // If Needed for Shader is_scrolled = false; }
            Translate Function if(is_left_clicked){ arc.Translate(mouse_delta_x, mouse_delta_y); camera_pos = arc.Camera(); // If Needed for Shader }
            ViewProjMatrix Function // Creates View Projection Matrix in Location Pointed to by viewproj float viewproj[16]; arc.ViewProjMatrix(viewproj);
            MouseRay Function // Gets Direction Vector of Mouse Ray From Camera float ray[3]; arc.MouseRay(ray);

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/mattie20/Arcball-Graphics-Package.git

          • CLI

            gh repo clone mattie20/Arcball-Graphics-Package

          • sshUrl

            git@github.com:mattie20/Arcball-Graphics-Package.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link