本文整理汇总了C++中Point2::getX方法的典型用法代码示例。如果您正苦于以下问题:C++ Point2::getX方法的具体用法?C++ Point2::getX怎么用?C++ Point2::getX使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Point2
的用法示例。
在下文中一共展示了Point2::getX方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: display
//Display Method
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glPointSize(10);
if(pts.p1.getX() != 0 || pts.p2.getX() != 0 || pts.p3.getX() != 0) //Reset Struct and set first
{ a = subtactPoints(pts.p1, pts.p2);
b = subtactPoints(pts.p2, pts.p3);
c = subtactPoints(pts.p3, pts.p1);
drawPoint(pts.p1.getX(), pts.p1.getY());
drawPoint(pts.p2.getX(), pts.p2.getY());
drawPoint(pts.p3.getX(), pts.p3.getY());
drawTriangle(pts);
exCenter = calcCenter(pts, a, b, c);
exRad = radCirc(a, b, c);
glColor3f(1.0, 1.0, 0.0);
drawCircle(exCenter.getX(), exCenter.getY(), exRad, 1000);
inCenter = calcCenterInCirc(pts);
glColor3f(0.0, 1.0, 0.0);
drawCircle(inCenter.getX(), inCenter.getY(), inRad, 1000);
nineCenter = calcNineCirc(pts);
glColor3f(0.0, 1.0, 1.0);
drawCircle(nineCenter.getX(), nineCenter.getY(), nineRad, 1000);
}
}
示例2: dotProduct
float dotProduct(Point2 A, Point2 B)
{
Point2 ret;
ret.set((A.getX()*B.getX()),(A.getY()*B.getY()));
int r = ret.getX() + ret.getY();
return r;
}
示例3: CohenSutherlandClip
Point2 CohenSutherlandClip(Point2 p1, Point2 p2) //function to tell us if the line intersects with the rectangle
{ //returns a set of points if such intersection occurs
unsigned char code = getCode(p1); //takes the first point to test the location
Point2 p(p1.getX(), p1.getY()); //takes the first point and places it into a local variable
float tempX, tempY;
float dely = p2.getY() - p1.getY(); //these values help determine the slope of the line
float delx = p2.getX() - p1.getX();
if(code & 8) { //to the left
tempY = p.getY() + ((LEFT - p.getX()) * dely / delx); //obtains the y value where the line crosses
tempX = LEFT; //obtains the x value where the line crosses
p.set(tempX, tempY); //places these values into p
}
if(code & 2) { //to the right
tempY = p.getY() + ((RIGHT - p.getX()) * dely / delx); //obtains the y value where the line crosses
tempX = RIGHT; //obtains the x value where the line crosses
p.set(tempX, tempY); //places these value into p
}
if(code & 1) { //to the bottom
if(p.getY()<BOTTOM)
{
tempX = p.getX() + ((BOTTOM - p.getY()) * delx / dely); //obtains the x value where line crosses
tempY = BOTTOM; //obtains the y value where line crosses
p.set(tempX, tempY);
}
}
if(code & 4) {
if(p.getY()>TOP) //to the top
{
tempX = p.getX() + ((TOP - p.getY()) * delx / dely); //obtains the x value where line crosses
tempY = TOP; //obtains the y value where line crosses
p.set(tempX, tempY);
}
}
return p; //returns the point where the line intersects with the rectangle
}
示例4: addPoints
Point2 addPoints(Point2 A, Point2 B)
{
int x = B.getX() + A.getX();
int y = B.getY() + A.getY();
Point2 ret;
ret.set(x,y);
return ret;
}
示例5: subtactPoints
Point2 subtactPoints(Point2 A, Point2 B)
{
int x = B.getX() - A.getX();
int y = B.getY() - A.getY();
Point2 ret;
ret.set(x,y);
return ret;
}
示例6: getCode
unsigned char getCode(Point2 p) //This function returns a bitwise OR value
{
unsigned char code = 0;
if(p.getX()<LEFT) code |= 8; //if on the left, then TFFF or 1000
if(p.getY()>TOP) code |= 4; //if on the top, then FTFF or 0100
if(p.getX()>RIGHT) code |= 2; //if on the right, then FFTF or 0010
if(p.getY()<BOTTOM) code |= 1; //if on the bottom, then FFFT or 0001
return code;
}
示例7: drawArc
void drawArc(Point2 centre, float radius, float startAngle, float sweep)
{
Turtle t;
const int n = 30;
float angle = startAngle * M_PI / 180;
float angleInc = sweep * M_PI / (180 * n);
float cx = centre.getX(), cy = centre.getY();
t.moveTo(Point2(cx + radius*cos(angle), cy + radius*sin(angle)));
for (int k = 1; k < n; k++, angle += angleInc)
{
t.lineTo(Point2(cx + radius*cos(angle), cy + radius*sin(angle)));
}
}
示例8: SetPosition
void SFAsset::SetPosition(Point2 & point) {
Vector2 v(point.getX(), point.getY());
bbox->SetCentre(v);
}
示例9: magnitude
float magnitude(Point2 A)
{
return sqrt(pow(A.getX(),2) + pow(A.getY(),2));
}
示例10: scalePoint
Point2 scalePoint(float A, Point2 B)
{
Point2 ret;
ret.set(A*B.getX(), A*B.getY());
return ret;
}
示例11: getNormal
Point2 getNormal(Point2 A)
{
Point2 ret;
ret.set(-A.getY(), A.getX());
return ret;
}
示例12:
Vector(Point2 pt, Point2 pt2) {
x = pt.getX() - pt2.getX();
y = pt.getY() - pt2.getY();
}
示例13: lineTo
void Canvas::lineTo( const Point2 & p ) {
// simply call other variant
lineTo( p.getX(), p.getY() );
}
示例14: equals
bool equals(Point2 p1, Point2 p2) //this tests to see if two sets of points are the same
{
if((p1.getX()==p2.getX()) && (p1.getY()==p2.getY()))
return true;
return false;
}
示例15: glPushMatrix
void GLView::drawChoice0() {
/// drawing example
glColor3f(0,0.5,1);
ugl::drawText("drawChoice0: "+_choiceText,0,0);
glPushMatrix();
glColor3f(1,0,0);
vector<Point2> points = curve->getPoints();
vector<Point2> refPoints = curve->getReferencePoints();
vector<Point2> *curvePoints = curve->getCurvePoints();
//User-defined polygon
glLineWidth(1);
glColor3f(1,0,0);
glBegin(GL_LINE_STRIP);
for(int i = 0; i < points.size(); i++){
Point2 p = points.at(i);
glVertex2f(p.getX(),p.getY());
}
if(closed){
if(points.size() > 0){
glVertex2f(points.at(0).getX(),points.at(0).getY());
}
}
glEnd();
//User-defined points
glPointSize(5);
glColor3f(1,0,0);
glBegin(GL_POINTS);
for(int i = 0; i < points.size(); i++){
Point2 p = points.at(i);
if(!p.isFixed()){
glVertex2f(p.getX(),p.getY());
}
}
glEnd();
//Fixed points
glPointSize(10);
glColor3f(1,0,0);
glBegin(GL_POINTS);
for(int i = 0; i < points.size(); i++){
Point2 p = points.at(i);
if(p.isFixed()){
glVertex2f(p.getX(),p.getY());
}
}
glEnd();
//Ref points
glLineWidth(2);
glColor3f(0,0,1);
glBegin(GL_LINE_STRIP);
for(int i = 0; i < refPoints.size(); i++){
Point2 p = refPoints.at(i);
glVertex2f(p.getX(), p.getY());
}
if(closed){
if(refPoints.size() > 0){
glVertex2f(refPoints.at(0).getX(),refPoints.at(0).getY());
}
}
glEnd();
//Curve
glLineWidth(2);
glColor3f(0,1,0);
glBegin(GL_LINE_STRIP);
for(int i = 0; i < curvePoints->size(); i++){
Point2 p = curvePoints->at(i);
glVertex2f(p.getX(), p.getY());
}
if(closed){
if(curvePoints->size() > 0){
glVertex2f(curvePoints->at(0).getX(),curvePoints->at(0).getY());
}
}
glEnd();
//Curve points
glPointSize(5);
glColor3f(0,1,0);
glBegin(GL_POINTS);
for(int i = 0; i < curvePoints->size(); i++){
Point2 p = curvePoints->at(i);
glVertex2f(p.getX(), p.getY());
ugl::drawText(""+i,p.getX(),p.getY());
}
glEnd();
//.........这里部分代码省略.........