本文整理汇总了C++中GRectangle::getHeight方法的典型用法代码示例。如果您正苦于以下问题:C++ GRectangle::getHeight方法的具体用法?C++ GRectangle::getHeight怎么用?C++ GRectangle::getHeight使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GRectangle
的用法示例。
在下文中一共展示了GRectangle::getHeight方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getBounds
// JL rewrote to handle transformed case
GRectangle GCompound::getBounds() const {
double x1, y1, x2, y2;
x1 = 1E20;
x2 = -1E20;
y1 = 1E20;
y2 = -1E20;
for (int i = 0; i < contents.size(); i++) {
GRectangle bounds = contents.get(i)->getBounds();
GPoint vertices[4];
vertices[0] = GPoint(bounds.getX(), bounds.getY());
vertices[1] = GPoint(bounds.getX() + bounds.getWidth(), bounds.getY());
vertices[2] = GPoint(bounds.getX(), bounds.getY() + bounds.getHeight());
vertices[3] = GPoint(bounds.getX()+ bounds.getWidth(), bounds.getY() + bounds.getHeight());
if (transformed) {
for (int j = 0; j < 4; j++)
vertices[j] = matrix.image(vertices[j]);
}
for (int j = 0; j < 4; j++) {
double x = vertices[j].getX();
double y = vertices[j].getY();
if (x < x1) x1 = x;
if (y < y1) y1 = y;
if (x > x2) x2 = x;
if (y > y2) y2 = y;
}
}
return GRectangle(x + x1, y + y1, x2 - x1, y2 - y1);
}
示例2: getSize
GDimension GObject::getSize() const {
GRectangle bounds = getBounds();
return GDimension(bounds.getWidth(), bounds.getHeight());
}
示例3: setFrameRectangle
void GArc::setFrameRectangle(const GRectangle& rect) {
setFrameRectangle(rect.getX(), rect.getY(), rect.getWidth(),
rect.getHeight());
}
示例4: setBounds
void GOval::setBounds(const GRectangle& bounds) {
setLocation(bounds.getX(), bounds.getY());
setSize(bounds.getWidth(), bounds.getHeight());
}
示例5: repaintRegion
void GDrawingSurface::repaintRegion(const GRectangle& bounds) {
repaintRegion((int) bounds.getX(), (int) bounds.getY(),
(int) bounds.getWidth(), (int) bounds.getHeight());
}
示例6: test_contains_and_getBounds
//.........这里部分代码省略.........
ch->addItem("compound");
ch->addItem("button");
ch->setSelectedItem("rectangle");
currObj = rect;
GButton *endButton = new GButton("End test");
GButton *fillButton = new GButton("Auto-fill");
GButton *rotateButton = new GButton("Rotate");
GButton *scaleButton = new GButton("Scale");
GCheckBox *compCheckbox = new GCheckBox("compounds");
compCheckbox->setActionCommand("compounds");
gw->addToRegion(compCheckbox, "north");
gw->addToRegion(ch, "north");
gw->addToRegion(rotateButton, "north");
gw->addToRegion(scaleButton, "north");
gw->addToRegion(fillButton, "north");
gw->addToRegion(endButton, "north");
while (true) {
GEvent e = waitForEvent(ACTION_EVENT | MOUSE_EVENT);
if (!e.isValid())
continue;
if (e.getEventClass() == ACTION_EVENT) {
if (((GActionEvent) e).getActionCommand() == "End test")
break;
if (((GActionEvent) e).getActionCommand() == "compounds") {
bgRect1->setVisible(compCheckbox->isSelected());
useCompounds = compCheckbox->isSelected();
}
if (((GActionEvent) e).getActionCommand() == "Testo") {
GPoint pt = button->getLocation();
button->setLocation(pt.getX()-button->getWidth()-10, pt.getY());
pause(1000);
button->setLocation(pt);
}
if (((GActionEvent) e).getActionCommand() == "Auto-fill") {
GRectangle bds = currObj->getBounds();
int xmin = bds.getX();
int ymin = bds.getY();
int xmax = bds.getX() + bds.getWidth();
int ymax = bds.getY() + bds.getHeight();
int dx = useCompounds ? comp1->getX(): 0;
int dy = useCompounds ? comp1->getY(): 0;
for (int y = ymin; y < ymax; y+=1)
for (int x = xmin; x < xmax; x+=1) {
if (currObj->contains(x, y)) {
gw->setColor("red");
gw->fillOval(x + dx, y + dy, 1, 1);
} else {
gw->setColor("green");
gw->fillOval(x + dx, y + dy, 1, 1);
}
}
}
if (((GActionEvent) e).getActionCommand() == "Rotate") {
currObj->rotate(45);
if (useCompounds) {
bgRect1->setBounds(comp1->getBounds());
}
}
if (((GActionEvent) e).getActionCommand() == "Scale") {
currObj->scale(1.2, 0.8);
if (useCompounds) {
bgRect1->setBounds(comp1->getBounds());
}
}
if (((GActionEvent) e).getActionCommand() == "chooser") {
string shape = ch->getSelectedItem();
if (useCompounds) {
comp1->remove(currObj);
gw->remove(comp1);
} else {
gw->remove(currObj);
}
gw->setColor("white");
gw->fillRect(0, 0, gw->getCanvasWidth(), gw->getCanvasHeight());
//drawGrid();
gw->setColor("black");
currObj = shapeMap.get(shape);
if (useCompounds) {
gw->add(comp1);
comp1->add(currObj, 50, 50);
bgRect1->setBounds(comp1->getBounds());
} else {
gw->add(currObj);
}
gw->drawOval(currObj->getX()-2, currObj->getY()-2, 4, 4);
}
} else if (e.getEventType() == MOUSE_CLICKED) {
double x = ((GMouseEvent) e).getX();
double y = ((GMouseEvent) e).getY();
if (currObj->contains(x, y)) {
gw->setColor("red");
gw->fillOval(x, y, 1, 1);
}
}
}
}
示例7: fillRect
void GDrawingSurface::fillRect(const GRectangle& bounds) {
fillRect(bounds.getX(), bounds.getY(), bounds.getWidth(), bounds.getHeight());
}
示例8: drawOval
void GDrawingSurface::drawOval(const GRectangle& bounds) {
drawOval(bounds.getX(), bounds.getY(), bounds.getWidth(), bounds.getHeight());
}
示例9: setBounds
void GInteractor::setBounds(const GRectangle& rect) {
setLocation(rect.getX(), rect.getY());
setSize(rect.getWidth(), rect.getHeight());
}
示例10: fillOval
void GWindow::fillOval(const GRectangle & bounds) {
if (isOpen()) {
fillOval(bounds.getX(), bounds.getY(), bounds.getWidth(),
bounds.getHeight());
}
}
示例11: drawRect
void GWindow::drawRect(const GRectangle & bounds) {
if (isOpen()) {
drawRect(bounds.getX(), bounds.getY(), bounds.getWidth(),
bounds.getHeight());
}
}