第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

確定兩個(gè)矩形是否重疊?

確定兩個(gè)矩形是否重疊?

海綿寶寶撒 2019-06-25 12:54:05
確定兩個(gè)矩形是否重疊?我正在嘗試編寫(xiě)一個(gè)C+程序,它接受用戶(hù)的以下輸入來(lái)構(gòu)造矩形(介于2到5之間):高度、寬度、x-pos、y-pos。所有這些矩形都將與x和y軸平行存在,即它們的所有邊都有0或無(wú)窮大的斜率。我試著去實(shí)現(xiàn)這,這個(gè)有疑問(wèn),但我運(yùn)氣不太好。我目前的實(shí)現(xiàn)如下:// Gets all the vertices for Rectangle 1 and stores them in an array -> arrRect1 // point 1 x: arrRect1[0], point 1 y: arrRect1[1] and so on... // Gets all the vertices for Rectangle 2 and stores them in an array -> arrRect2 // rotated edge of point a, rect 1int rot_x, rot_y;rot_x = -arrRect1[3];rot_y = arrRect1[2]; // point on rotated edgeint pnt_x, pnt_y;pnt_x = arrRect1[2]; pnt_y = arrRect1[3]; // test point, a from rect 2int tst_x, tst_y;tst_x = arrRect2[0];tst_y = arrRect2[1]; int value;value = (rot_x * (tst_x - pnt_x)) + (rot_y * (tst_y - pnt_y));cout << "Value: " << value;但是,我不太確定(A)我是否正確地實(shí)現(xiàn)了我鏈接到的算法,或者我是否準(zhǔn)確地解釋了這一點(diǎn)?有什么建議嗎?
查看完整描述

3 回答

?
心有法竹

TA貢獻(xiàn)1866條經(jīng)驗(yàn) 獲得超5個(gè)贊

struct rect{
    int x;
    int y;
    int width;
    int height;};bool valueInRange(int value, int min, int max){ return (value >= min) && (value <= max); }bool rectOverlap(rect A, rect B){
    bool xOverlap = valueInRange(A.x, B.x, B.x + B.width) ||
                    valueInRange(B.x, A.x, A.x + A.width);

    bool yOverlap = valueInRange(A.y, B.y, B.y + B.height) ||
                    valueInRange(B.y, A.y, A.y + A.height);

    return xOverlap && yOverlap;}


查看完整回答
反對(duì) 回復(fù) 2019-06-25
?
慕虎7371278

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超4個(gè)贊

struct Rect{
    Rect(int x1, int x2, int y1, int y2)
    : x1(x1), x2(x2), y1(y1), y2(y2)
    {
        assert(x1 < x2);
        assert(y1 < y2);
    }

    int x1, x2, y1, y2;};booloverlap(const Rect &r1, const Rect &r2){
    // The rectangles don't overlap if
    // one rectangle's minimum in some dimension 
    // is greater than the other's maximum in
    // that dimension.

    bool noOverlap = r1.x1 > r2.x2 ||
                     r2.x1 > r1.x2 ||
                     r1.y1 > r2.y2 ||
                     r2.y1 > r1.y2;

    return !noOverlap;}


查看完整回答
反對(duì) 回復(fù) 2019-06-25
  • 3 回答
  • 0 關(guān)注
  • 991 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)