I have a 3d Point in space. From this point I have vertices defind by(scale). I have a Quaternion representing the rotation of the object (lets say a block). So...
(1) I know the point in local and world space and can translate.
(2) I know the scale of the object and it's starting vertices intersections at zero rotation.
(3) I have the quaternion which represents the 3d rotation and can translate that to degrees and Eulers.
How do i find the exact points of the vertices after the rotation. (what I'm attempting to do is plot points from vertice to vertice all along the sides/top/bottom of the object.)I have looked at Matrix4 transformations and Quaternions and still do not understand how to find the vertices after rotation.
Just bought a new ST Micro iNEMO-M1 system, and am looking to have my code visually show me the rotation information. I've got a working C++ code which actively acquires data from the sensor, and I'm looking to extend that into some visual interface which will show me on-screen the position of the sensor.
I figure using rotation information in the form of quaternion data is the most useful (want to avoid the gimbal lock problems associated with Roll/Pitch/Yaw).
What would be the best method to visualize the rotation of my sensor in real-time?
So I've got a sensor (contains a gyroscope, accelerometer, and magnetometer) that outputs quaternion data. I'm looking to take that data and use it to display the rotation of my sensor in the form of some object on the screen. I've seen instances where programs use a cube, but I'm hoping to figure out a way to have a little more control over what the object I'm rendering is.
how to get started? Are there any software packages that might be able to accomplish this?
I am creating and implementing a left and a right rotation to balance a bst into an avl tree. I have made and tried 5 different codes that are commented in the functions left_rotate() and right_rotate() but none have run correctly. Sometimes the program works, sometimes there is a segmentation fault and sometimes not all inserted numbers are shown.
avl.c
Code: #include<stdio.h>#include<stdlib.h> #include<time.h> #include "avl.h" #define N 10 void swap(int *a, int *b){
The problem i have faced is image is getting cropped.
I want to rotate an image without cropping. I have searched a lot but I am not getting any algorithm based on C. How to get the algorithm for image rotation without cropping.
how I want my sprite movement to work: if my sprite is faced upwards and i press W, it will move up. If my sprite is faced to the right and i press W, it will go right. etc. // It doesn't work like that right now and how to do it.The sprite's rotation works fine.
My question is how do I move the character depending on the rotation?
Also, you might see the "if(havePlayersCollided == false) {playerSprite.move(yadiyada)}" . yes i dont need the haveplayerscollided function because it doesnt work the way I want it to. I might make a thread for it in the future, but right now I need to get the rotation movement fixed before I move onto the collision detection between players.
It is technically not a programming question and is more maths oriented. It has to do with game AI and specifically getting the AI to rotate correctly. I am trying to create the base method that handles AI rotation. It will take a target orientation and rotate the entity from it's current orientation to that target orientation.
Let's say we have a Entity that has the orientation of 1.57079 Radians (90 Degrees) and we want to change that Entity's orientation to 0 Radians (0 Degrees). How would one find the correct way to rotate from just them two orientations (IE find the shortest rotation direction from a current orientation to a target orientation)?
As my implementation stands now the Entity rotates just fine I think but always in a clockwise rotation (Because I can't figure out how to determine the best rotation direction). For example using the previous number (1.57079 Radians to 0 Radians) the Entity will rotate all the way around 270 Degrees clockwise instead of rotating just 90 degrees counter-clockwise.
I have thought about possibly projecting vectors a short distance forward from the current orientation and target orientation to figure out the rotation direction but not sure if that is a good way to implement it.
I am doing a project for a class which involves making a game where there is an arrray that holds a player (you) and a zombie (comp). The player is suppose to be able to turn clockwise or counter clockwise, move forward, and backward and shoot. Im having trouble trying to rotate the char in an array. I am also trying to switch from using the W,S,D,A to the arrow keys but doesnt seem to work.
#include <iostream> #include <windows.h> #include "color.h" using namespace std; using namespace Petter; const int COL = 15; void initBoard(char[][COL], int, int);
I am working on a Paint program and I have a nice routine (copied from the Net) that beautifully rotates my Image by any chosen degree, and even preserving the entire Image with a 'noclipping' option.
The problem is - That after the rotation, say 45degrees, the areas in the corners, that originally were not part of the Image, cannot be drawn to. I have an 'eye dropper tool' that shows these areas to be null, having no color. My drawing tools will not work on these areas.
public static Bitmap RotateImage(Image image, float rotateAtX, float rotateAtY, float angle, bool bNoClip) { int W, H, X, Y; if (bNoClip) // use Clipping { double dW = (double)image.Width; double dH = (double)image.Height; double degrees = Math.Abs(angle);
In the code below. I believe I am returning the memory location of the value I am looking for. How can get the value?
main.cpp
int choice = 0; PlayerMenu *newPM = new PlayerMenu; File *file = new File; // Menu for loading, creating or exiting the game choice = newPM->menuChoices();
PlayerMenu.cpp
[Code] ....
I am not sure how to deference the value so I can get at the value instead of the memory location.
How can i get the Location of an Image used by the ToolStripButton? I need the locaton to detect if the cursor is above the image that i use for the button. I tried it like this:
Code: class SomeOtherClass; void foo(SomeOtherClass* p);
And
Code: void foo(class SomeOtherClass* p);
I was told that "2" would limit the scope of the forward declaration to the declaration of foo... However, after testing it, it appears that both behave the same...
I recently started learning C++ and wanted to deep a bit into process memory reading for Windows, but I get an error I don't know how to fix. I'm using Visual Studio Express 2013 as my IDE and it tells me this, when I try to run and debug:
"Unhandled exception at 0x77E3E243 (ntdll.dll) in readProcessMemory.exe: 0xC0000005: Access violation reading location 0x00000043."
The Call Stack window says following: ntdll.dll!_NtRaiseException@12() Unknown ntdll.dll!_KiUserExceptionDispatcher@8() Unknown ntdll.dll!_RtlInitUnicodeString@8() Unknown > readProcessMemory.exe!main() Line 8 C++ [External Code]
And in the Output window is this: First-chance exception at 0x77E3E243 (ntdll.dll) in readProcessMemory.exe: 0xC0000005: Access violation reading location 0x00000043. Unhandled exception at 0x77E3E243 (ntdll.dll) in readProcessMemory.exe: 0xC0000005: Access violation reading location 0x00000043.
My code should be extremely simple, I'm just trying to find a Windows window. But here's the code.
Code: #include <windows.h> #include <iostream> using namespace std; int main(){
I have these two functions listed below. DoEvent() gets called from a window procedure whenever some event occurs. SetEvent() sets an element of the m_Events array a pointer to a Command object to handle the event. The array is zeroed in the constructor.
The error occurs on line 16 in the code in DoEvent(). Why the array is suddenly unreadable. When I call SetEvent() it works just fine, no problem.
When I step through the debugger in SetEvent i see that each element begins as 0 and the element I set is set properly. However, when I step through DoEvent() all elements in m_Events show "?????" "Unable to read memory".
I have a problem. Im testing character movement in c++ and when i compile and run this, then try to press arrow keys it says "Access violation writing location 0x011feff4.Unhandled exception at 0x770a15de in test.exe: 0xC0000005: Access violation writing location 0x011feff4.The program '[8404] test.exe: Native' has exited with code -1073741819 (0xc0000005)."
#include <iostream> #include <string> #include <Windows.h> #include <conio.h> using namespace std; void map1create(); // Function for creating the map1
I know how to find the occurrences of a character in a string, but I have a more specific problem.
For example, consider the string: " C 1.3825 4.0000 12.0000 1.9133 0.1853 0.9000 -1.1359 4.0000 "
I want to extract a vector that contains the positions of every first character for each number.
For the example above, the output should be a vector with elements [6 15 23 33 etc...]. These are the positions of the first character for every number.
I need to be able to do this for any arbitrary string with any arbitrary amount of numbers and characters in it (I also need to account for negative numbers).
Right now my application database is stored in the AppDataRoamingAppName directory.
The client has requested that the administrator choose the location for the database, and have a choice between a local machine, or an online repository.
The clients are not IT people, they are business people, and I don't think it's a good idea to let a user choose where to keep the central app database. Other users (think admin vs user) will need to download the database for use on their own local machines, which is how the issue even came up, it's kind of a shared database that only the admin can add to.
My compromise was to COPY the main database to the location of the user's choosing, then push updates to it as the main database was written to.
So after working on this today, I have the user choose a directory, I add the file path to the application settings, then I create the file and copy the database as needed to the new location (online repositories are next).
I have a std::vector of short ints that I need to write to a specific location in a binary file (without using .NET code). To that end, I wrote up this code:
Code: ofstream fileStream (filePathString, ios::out | ios::binary); int curPos = 2821; fileStream.seekp(curPos); int iter = 0; while (iter < 1024*1024){ char bytesToWrite[2]; //Low byte bytesToWrite[0] = LOBYTE(dataVector[iter]);
[Code]...
The code runs without crashing, but when I look at the file afterwards in a hex editor, every byte (even those outside the range I thought I was writing to) are replaced with 00. I suspect I'm missing something in my understanding of file streams. Did I write that code correctly? Seekp does move the pointer over the next byte to be overwritten, yes? Am I getting a memory leak somewhere?