C++ :: Linear Buffer Coordinate - Printing Onto Screen Coordinate
Mar 24, 2013
I have a linear buffer coordinate, i am to print onto a screen coordinate.
Say maxy = 20, maxx = 10, bufferx = 20, y, x,
Buffer coordinates to screen coordinates:
Algorithm: So for each maxx'th of bufferx, y will +1 and x will reset.
Mathematical: y = int bufferx / maxx,
const double averageIncr = int (maxx+1/maxx) - double (maxx+1/maxx);
So the amount of averageIncr in (int bufferx / maxx - float bufferx / maxx)
is the screen x coordinate. Then
(int bufferx / maxx - float bufferx / maxx) / averageIncr = x
Screen coordinates to buffer coordinates:
bufferx, y = 21, x = 10, maxy = 20, maxx = 10,
y * x would be the case if bufferx <= max screen coordinate.
There is no max bufferx.
How to find the transition from screen coordinates to buffer coordinates? Also, if the algorithm within a for loop, or that the mathematical way would be slower or not? I rarely touch floating point stuff.
So, in a program I'm making, I have an idea, that I can print the character background first, then print another layer on top of the background. Can I do that? But I need to be able to place a single character at a certain position, what function does that?
I have a character at a co-ordinate, say (3,4) for example, and I need to get him to (10,15). I would like him to move one block every tick or half a second, so that you can see him moving towards his destination. How to achieve this?
POINT p; for (int i = 0;; ++i) { HWND hwnd = GetConsoleWindow(); system("cls"); if (ScreenToClient(hwnd, &p)) { //p.x and p.y are now relative to hwnd's client area } cout << p.x << " " << p.y; Sleep(200); }
I'm looking for a function that gives current mouse position(x and y) in that particular console window. I've tried above code but it is not working.
I have 2 points in a cartesian coordinate system, where the first point is always (0,0). Given the second point and a heading in degrees, how would I write an algorithm to determine if the 2nd point is traveling in the general direction of (0,0) ?
For example:
Point a (0,0) Point b (10,0) Point b heading = 270 degrees
This would be true this 270 degrees points right and point b is 10 units right of point a. I would probably also want this is be fuzzy somewhat, in that anything from say + or - 30 degrees would also be true, or something like this.
Cam is a pointer to a structure and viewpoint is a vector located within the struct. I am trying to read in from a file the coordinates for the vector. I have also tried &cam->view_point->x as well as &cam.view_point.x and it tells me that I am requesting something not in a struct
How to read pixels from an x,y coordinate using the VGA register values?
byte readVRAMdirect(VGA_Type *VGA, uint_32 start, uint_32 offset) //Used in 256 color mode! { if (!VGA->VRAM_size) return 0; //No size! return VGA->VRAM[SAFEMOD((start*4)+offset,VGA->VRAM_size)]; //The full protected offset!
[code]....
getVRAMScanlineStart(VGA,y) gives the offset register multiplied by 2 (shl 1), multiplied with the current memory address size (byte, word or dword) multiplied by the scanline. 256-color mode is already working. GETBIT gives a bit #(0-7) of a specified byte.
writeVRAMplane & readVRAMplane are used by the CPU to write data to VRAM (address 0xA000:xxxx-0xBFFF:xxxx), determined by the memory read and write modes(working) and the odd/even, planar or chain4 enable mode (working).how to get the 16 color and interleaved shift mode working?
I am drawing in a simple (square) MFC window. I realize that (0,0) starts in the upper left hand corner. I wanted to see how MFC handled drawing of angles, so I use this code:
Code: double CompassDegreesToRadians(double compassDegrees) { return((PI / 2.0f) - (compassDegrees * PI / 180.0f)); } // Make pen CPen penRed; penRed.CreatePen(PS_SOLID | PS_COSMETIC, 1, RGB(255, 0, 0)); // Test Angles
[Code] .....
Using this code, and changing the value of angle1 to these values (0, 90, 180, 270) I think MFC uses the coordinate system:
This seems like a strange coordinate system to use. Am I doing something wrong? If this is correct, how can I convert my calculations to this coordinate system? (compass degrees):
I am very much new to C programming. However, I have an assignment regarding linked list.
Problem Statement is: Using linked list store the coordinates of four cartesian points and then find the coordinates having longest distance from its origin.
I am trying to repetitively send the screen bitmap buffer of a client to a server. The program works perfect when the client and server are running on the same machine, otherwise the server receives a distorted buffer. The distorted buffer received by the server seems to start from a byte which was not the starting byte of a buffer sent by the client (I am not sure). w=1366 and h=768 are the screen width and height respectively of both the server and the client.
Client code:
while (connect(sSocket,(sockaddr*)&addr,sizeof(addr))!=0) {} while (!GetAsyncKeyState(VK_ESCAPE)) { s=4*w*h; while (s>0) { n=send(sSocket,buf,s,0); s-=n; for (i=0; i<s; i++) {buf[i]=buf[i+n];} } BitBlt(MemDC,0,0,w,h,hdc,0,0,SRCCOPY); GetDIBits(MemDC,hBit,0,h,buf,&bmi,DIB_RGB_COLORS); }
Server code:
do {rSocket=accept(hSocket,(sockaddr*)&addr,&addrlen);} while (rSocket==INVALID_SOCKET); while (!GetAsyncKeyState(VK_ESCAPE)) { s=4*w*h; while (s>0) {n=recv(rSocket,buf,s,0); s-=n;} SetDIBitsToDevice(hdc,0,0,w,h,0,0,0,h,buf,&bmi,DIB_RGB_COLORS); }
how to make a program in which a user is prompted to input four numbers like 1234 and then print those four numbers one by one on screen using only one variable..??
For example: 1 2 3 4
in ascending order...
I've done that with two methods but i am not sure whether the methods were correct..
I am trying to do single axis solar tracker with linear actuator /rtc/ UNO. I have already done with feedback sensor.
Now Here I am trying to without feedback. Linear actuator specification: 24v , 3.2mm/sec as speed , 600mm stoke.
Desired angle calculation: tracking start from 7am to 18PM, 11hours Assumed degree: 7AM as -45 deg , 12.30 as 0 degree and 18 pm as 45 degree. static float slope= 0.00227272727273; static float intercept=- 102.272727273;
[Code] ....
How can i put time here. Coding for calculating Ton time and solve above equation. below i posted my code . I need it has to be modified little bit. i need to implement ton time actuator here.
I need function takes desired and actual angle , where actuator try to move to its actual desired position.
Code below in arduino version
Code: double Desire_Degree; unsigned int TS; static float slope= 0.00227272727273; static float intercept=- 102.272727273; static int length; double Actual_Degree;
I'm trying to write a continuous linear linked list. But whenever I run my program and enter an option from my list, my switch statement gets highlighted in green and says "Thread 1: breakpoint 3.1. And then my program just stops. I'm wondering what part of the switch statement I've gotten wrong.
Here's my code. #include <iostream> using namespace std; struct node { int key; node *next; }; node *l; void print(node*list)
How to return a message saying that the value searched for is not found. We had to pull the data in from a .dat, i won't let me attach it as a .dat so I attached it as .txt. I know my it's sloppy. I usually clean up what I can once it is working properly.
#include <iostream> #include <iomanip> #include <fstream> #include <string> using namespace std; int ccnt; int size = 10;
I am trying to implement the linear programming solver. This is the header file of the linear programming solver :
/*! internal Representation of a LP constraint like: (c1 * X1) + (c2 * X2) + ... = K or <= K or >= K Where (ci, Xi) are the pairs in "variables" and K the real "constant". */
[Code] .....
I want to parse all the constraints and bounds as inputs and get the maximum value of the objective function as the output using the above lpsolver header file. I have also attached the sample file below.
I have a linear search algorithm set up to search through an array of class objects it works but the output does not match, when i search for a particluar name in the array the 1st and third values int the array are found but the second value is not found..
below is my code:
int linsearch(string val) { for (int j=0; j <= 3; j++) { if (player[j].getLastName()==val) return j ;
I am trying to write a code that solves a system of linear equations such as A*B=C. My system has a dimension equal to 1600. The matrix A cab be separated into 4 sub matrices and each can be handled by a different thread. I tried to solve this using the following code:
int main() { int count = 0; //Inputing matrix A ifstream matrix; matrix.open("example.txt");
[Code] ....
Although the above code gives the correct answer, the time needs to find the solution is bigger than that needed without using threads.
I'm attempting to insert items in my list in sorted order. I have accounted for if head is NULL, and if the item I'm trying to insert is less than head. But the problem occurs when I try to loop through until I find the item that is less than what I want to insert. In the while loop, the program just stops for some reason. Here is my code:
I'm not accessing memory that's not mine, I've made sure that current->next is a real node. I've been troubleshooting this for a couple of days, and I don't understand because it won't even get to the assigning part. It just stops after it goes through the while loop once, it won't go any further, no matter how many items I have in the list.
I currently have a file which allows inputs to record different transistor types. I then have the task of accessing this structure, find a certain manufacturer ID, and print the information about this particular transistor.
My problem is accessing the array to search through.
Here is my code:
Code: #include "stdio.h" const int IDLEN=30; //All constant values defined const int POLARITYLEN=3; const int MAXSTOCKITEMS=10; //First structure defined struct TransistorRec {
[Code]......
The errors I am currently getting are on line 54 'expected primary-expression before "struct"' and on line 60 ' 'maunfacturersID' undeclared'