您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ DrawRectangle函数代码示例

51自学网 2021-06-01 20:30:09
  C++
这篇教程C++ DrawRectangle函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中DrawRectangle函数的典型用法代码示例。如果您正苦于以下问题:C++ DrawRectangle函数的具体用法?C++ DrawRectangle怎么用?C++ DrawRectangle使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了DrawRectangle函数的28个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: DrawRectangle

void iwBuilding::Msg_PaintAfter(){    if(building->GetBuildingType() >= BLD_GRANITEMINE && building->GetBuildingType() <= BLD_GOLDMINE)    {        // Bei Bergwerken sieht die Nahrungsanzeige ein wenig anders aus (3x 2)        // "Schwarzer Rahmen"        DrawRectangle(GetDrawPos() + DrawPoint(40, 60), 144, 24, 0x80000000);        DrawPoint curPos = GetDrawPos() + DrawPoint(52, 72);        for(unsigned char i = 0; i < 3; ++i)        {            for(unsigned char z = 0; z < 2; ++z)            {                glArchivItem_Bitmap* bitmap = LOADER.GetMapImageN(2250 + USUAL_BUILDING_CONSTS[building->GetBuildingType() - 10].wares_needed[i]);                bitmap->Draw(curPos, 0, 0, 0, 0, 0, 0, (z < building->GetWares(i) ? 0xFFFFFFFF : 0xFF404040) );                curPos.x += 24;            }        }    }    else    {        DrawPoint curPos = GetDrawPos() + DrawPoint(width_ / 2, 60);        for(unsigned char i = 0; i < 2; ++i)        {            if(USUAL_BUILDING_CONSTS[building->GetBuildingType() - 10].wares_needed[i] == GD_NOTHING)                break;            // 6x Waren, je nachdem ob sie da sind, bei Katapult 4!            unsigned wares_count = (building->GetBuildingType() == BLD_CATAPULT) ? 4 : 6;            // "Schwarzer Rahmen"            DrawPoint waresPos = curPos - DrawPoint(24 * wares_count / 2, 0);            DrawRectangle(waresPos, 24 * wares_count, 24, 0x80000000);            waresPos += DrawPoint(12, 12);            for(unsigned char z = 0; z < wares_count; ++z)            {                glArchivItem_Bitmap* bitmap = LOADER.GetMapImageN(2250 + USUAL_BUILDING_CONSTS[building->GetBuildingType() - 10].wares_needed[i]);                bitmap->Draw(waresPos, 0, 0, 0, 0, 0, 0, (z < building->GetWares(i) ? COLOR_WHITE : 0xFF404040) );                waresPos.x += 24;            }            std::stringstream text;            text << (unsigned int)building->GetWares(i) << "/" << wares_count;            NormalFont->Draw(curPos + DrawPoint(0, 12), text.str(), glArchivItem_Font::DF_CENTER | glArchivItem_Font::DF_VCENTER);            curPos.y += 29;        }    }}
开发者ID:viksuhor,项目名称:s25client,代码行数:49,


示例2: DrawTopView

//----------------------------------------------------------------------------------------------------//// Here's where we draw the top view of the simulation.  We'll show the cannon location,// the target location, and the shell trajectory.  The scale here is 1 pixel equals 1 meter.//----------------------------------------------------------------------------------------------------//void	DrawTopView(HDC hdc, RECT *r)//----------------------------------------------------------------------------------------------------//{	int					w = (r->right - r->left);	// the window width	int					h = (r->bottom - r->top);	// the window height	RECT				tr;	COLORREF			red = RGB(255,0,0);	COLORREF			black = RGB(0,0,0);	COLORREF			blue = RGB(0,0,255);	COLORREF			white = RGB(255,255,255);	COLORREF			green = RGB(0,255,0);	int					x,z;	// NOTE: the h/2 factor that you see in the following	// calculations is an adjustment to place the origin	// at mid-height in the window.  The window origin is	// the upper left corner by default.	if(time == 0)		DrawRectangle(hdc, r, 1, black);	// Draw target bounding box (we'll draw the target in red)	tr.left = (int) (X - Length/2);	tr.right = (int) (X + Length/2);	tr.top = (int) (Z - Width/2 + h/2);	tr.bottom = (int) (Z + Width/2 + h/2);	DrawRectangle(hdc, &tr, 2, red);	// Draw the cannon in black	tr.left = 0;	tr.top = h/2;	tr.right = (int) (L * cos((90-Alpha) *3.14/180) * cos(Gamma * 3.14/180));	tr.bottom = (int) (L * cos((90-Alpha) *3.14/180) * sin(Gamma * 3.14/180) + h/2);	DrawLine(hdc, tr.left, tr.top, tr.right, tr.bottom, 2, blue);	// Draw the shell in blue (only draw the shell if time is greater than zero, i.e.,	// only after it leaves the barrel in our simulation	if(time>0)	{		x = (int) (s.i);		z = (int) (s.k + h/2);		DrawLine(hdc, x, z, x, z, 2, green);	}	// Draw label for this view	DrawString(hdc, 5, 20, "Top View", 8, 14);}
开发者ID:aaannndddyyy,项目名称:haskellnotebook,代码行数:52,


示例3: DrawRectangle

void ClipBitmapStyleEditor::Draw(wxDC& dc){	if (!m_pClipBitmapStyle) return;	const PieceInfo* pDefaultPieceInfo = m_pClipBitmapStyle->GetStatePiece(IStyle::SS_NORMAL);	for (int i = 0; i < IStyle::SS_NUM; ++i)	{		const PieceInfo* pPieceInfo = pDefaultPieceInfo;		const PieceInfo* pCurrPieceInfo = m_pClipBitmapStyle->GetStatePiece((IStyle::STYLE_STATE)i);		if (pCurrPieceInfo) pPieceInfo = pCurrPieceInfo;		if (!pPieceInfo)		{			dc.SetPen(wxPen(*wxLIGHT_GREY, Config::DISABLED_PEN_WIDTH));			dc.SetBrush(*wxGREY_BRUSH);			DrawRectangle(dc, m_rectState[i]);			DrawLine(dc, wxPoint(m_rectState[i].x, m_rectState[i].y), wxPoint(m_rectState[i].x+m_rectState[i].width, m_rectState[i].y+m_rectState[i].height));			DrawLine(dc, wxPoint(m_rectState[i].x, m_rectState[i].y+m_rectState[i].height), wxPoint(m_rectState[i].x+m_rectState[i].width, m_rectState[i].y));		}		else		{			DrawPiece(dc, m_rectState[i].GetPosition(), pPieceInfo);		}	}	DrawSelection(dc);}
开发者ID:mshandle,项目名称:spank,代码行数:28,


示例4: DrawGameplayScreen

// Gameplay Screen Draw logicvoid DrawGameplayScreen(void){    // TODO: Draw GAMEPLAY screen here!        HideCursor();        // Background    DrawTextureEx(bg, Vector2Zero(), 0, 10, WHITE);        // Ground    DrawRectangle(0, groundPositionY, GetScreenWidth(), 1, RED);       DrawPlayer(player);        // Draw triangles     for (int i=0; i<maxTriangles; i++)    {        if (triangles[i].isActive) DrawObjectOnCameraPosition(triangleTexture, triangles[i].position);    }        for (int i=0; i<maxPlatforms; i++)    {        if (platforms[i].isActive) DrawObjectOnCameraPosition(platformTexture, platforms[i].position);        //if (platforms[i].isActive) DrawRectangleRec(platforms[i].collider, RED);    }        if (!startGame) DrawText ("PRESS SPACE", 20, GetScreenHeight()-30, 15, WHITE);}
开发者ID:MarcMDE,项目名称:TapToJump,代码行数:29,


示例5: DrawSelectionRectangle

/****	Draw selected rectangle around the unit.****	@param unit	Pointer to the unit.**	@param type	Type of the unit.**	@param x	Screen X position of the unit.**	@param y	Screen Y position of the unit.*/local void DrawSelectionRectangle(Unit* unit,UnitType* type,int x,int y){    int color;    //    //	Select color for the rectangle    //    if( unit->Selected || (unit->Blink&1) ) {	if( unit->Player->Player==PlayerNumNeutral ) {	    color=ColorYellow;	} else if( unit->Player==ThisPlayer ) {	    color=ColorGreen;	} else {	    color=ColorRed;	}    } else if( CursorBuilding && type->Building && unit->Player==ThisPlayer ) {	// If building mark all buildings	color=ColorGray;    } else {	return;    }    DrawRectangle(color	,x+(type->TileWidth*TileSizeX-type->BoxWidth)/2	,y+(type->TileHeight*TileSizeY-type->BoxHeight)/2	,type->BoxWidth	,type->BoxHeight);}
开发者ID:saniv,项目名称:freecraft-ale-clone,代码行数:36,


示例6: sizeof

void CDX10Renderer::DrawRectangleFill(const TVector2& _rv2Position, const float _kfWidth, const float _kfHeight, const bool _kHasBorder){	m_pDevice->IASetPrimitiveTopology(D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP);	//fill vertex buffer with vertices	TVertex* pVerts = 0;	// Set vertex buffer	UINT stride = sizeof( TVertex );	UINT offset = 0;	m_pDevice->IASetVertexBuffers( 0, 1, &m_pVertexBuffer, &stride, &offset );	m_pVertexBuffer->Map(D3D10_MAP_WRITE_DISCARD, 0, (void**) &pVerts);	pVerts[0] = TVertex(TVector3(_rv2Position.x - _kfWidth * 0.5f, _rv2Position.y + _kfHeight * 0.5f, 0), m_uiBrushColour);	pVerts[1] = TVertex(TVector3(_rv2Position.x - _kfWidth * 0.5f, _rv2Position.y - _kfHeight * 0.5f, 0), m_uiBrushColour);	pVerts[2] = TVertex(TVector3(_rv2Position.x + _kfWidth * 0.5f, _rv2Position.y + _kfHeight * 0.5f, 0), m_uiBrushColour);	pVerts[3] = TVertex(TVector3(_rv2Position.x - _kfWidth * 0.5f, _rv2Position.y - _kfHeight * 0.5f, 0), m_uiBrushColour);	pVerts[4] = TVertex(TVector3(_rv2Position.x + _kfWidth * 0.5f, _rv2Position.y + _kfHeight * 0.5f, 0), m_uiBrushColour);	pVerts[5] = TVertex(TVector3(_rv2Position.x + _kfWidth * 0.5f, _rv2Position.y - _kfHeight * 0.5f, 0), m_uiBrushColour);	m_pVertexBuffer->Unmap();	m_pDevice->Draw(6, 0);	if(_kHasBorder)		DrawRectangle(_rv2Position, _kfWidth, _kfHeight);}
开发者ID:manakpp,项目名称:LocoShapes,代码行数:27,


示例7: SCOPED_DRAW_EVENTF

void FForwardShadingSceneRenderer::CopySceneAlpha(FRHICommandListImmediate& RHICmdList, const FViewInfo& View){	SCOPED_DRAW_EVENTF(RHICmdList, EventCopy, TEXT("CopySceneAlpha"));	RHICmdList.SetRasterizerState(TStaticRasterizerState<FM_Solid, CM_None>::GetRHI());	RHICmdList.SetDepthStencilState(TStaticDepthStencilState<false,CF_Always>::GetRHI());	RHICmdList.SetBlendState(TStaticBlendState<>::GetRHI());	GSceneRenderTargets.ResolveSceneColor(RHICmdList);	GSceneRenderTargets.BeginRenderingSceneAlphaCopy(RHICmdList);	int X = GSceneRenderTargets.GetBufferSizeXY().X;	int Y = GSceneRenderTargets.GetBufferSizeXY().Y;	RHICmdList.SetViewport(0, 0, 0.0f, X, Y, 1.0f);	TShaderMapRef<FScreenVS> ScreenVertexShader(View.ShaderMap);	TShaderMapRef<FForwardCopySceneAlphaPS> PixelShader(View.ShaderMap);	SetGlobalBoundShaderState(RHICmdList, FeatureLevel, ForwardCopySceneAlphaBoundShaderState, GFilterVertexDeclaration.VertexDeclarationRHI, *ScreenVertexShader, *PixelShader);	PixelShader->SetParameters(RHICmdList, View);	DrawRectangle( 		RHICmdList,		0, 0, 		X, Y, 		0, 0, 		X, Y,		FIntPoint(X, Y),		GSceneRenderTargets.GetBufferSizeXY(),		*ScreenVertexShader,		EDRF_UseTriangleOptimization);	GSceneRenderTargets.FinishRenderingSceneAlphaCopy(RHICmdList);}
开发者ID:johndpope,项目名称:UE4,代码行数:35,


示例8: SCOPED_DRAW_EVENTF

void FTranslucencyDrawingPolicyFactory::CopySceneColor(FRHICommandList& RHICmdList, const FViewInfo& View, const FPrimitiveSceneProxy* PrimitiveSceneProxy){	SCOPED_DRAW_EVENTF(RHICmdList, EventCopy, TEXT("CopySceneColor for %s %s"), *PrimitiveSceneProxy->GetOwnerName().ToString(), *PrimitiveSceneProxy->GetResourceName().ToString());	RHICmdList.SetRasterizerState(TStaticRasterizerState<FM_Solid, CM_None>::GetRHI());	RHICmdList.SetDepthStencilState(TStaticDepthStencilState<false, CF_Always>::GetRHI());	RHICmdList.SetBlendState(TStaticBlendState<>::GetRHI());	GSceneRenderTargets.ResolveSceneColor(RHICmdList);	GSceneRenderTargets.BeginRenderingLightAttenuation(RHICmdList);	RHICmdList.SetViewport(View.ViewRect.Min.X, View.ViewRect.Min.Y, 0.0f, View.ViewRect.Max.X, View.ViewRect.Max.Y, 1.0f);	TShaderMapRef<FScreenVS> ScreenVertexShader(View.ShaderMap);	TShaderMapRef<FCopySceneColorPS> PixelShader(View.ShaderMap);	SetGlobalBoundShaderState(RHICmdList, View.GetFeatureLevel(), CopySceneColorBoundShaderState, GFilterVertexDeclaration.VertexDeclarationRHI, *ScreenVertexShader, *PixelShader);	/// ?	PixelShader->SetParameters(RHICmdList, View);	DrawRectangle(		RHICmdList,		0, 0, 		View.ViewRect.Width(), View.ViewRect.Height(),		View.ViewRect.Min.X, View.ViewRect.Min.Y, 		View.ViewRect.Width(), View.ViewRect.Height(),		FIntPoint(View.ViewRect.Width(), View.ViewRect.Height()),		GSceneRenderTargets.GetBufferSizeXY(),		*ScreenVertexShader,		EDRF_UseTriangleOptimization);	GSceneRenderTargets.FinishRenderingLightAttenuation(RHICmdList);}
开发者ID:kidaa,项目名称:UnrealEngineVR,代码行数:33,


示例9: Draw3D

/** *  Zeichenmethode * *  @return @p true bei Erfolg, @p false bei Fehler * *  @author FloSoft */bool ctrlTable::Draw_(void){	Draw3D(GetX(), GetY(), width, height, tc, 2);	DrawControls();	unsigned short lines = static_cast<unsigned short>((line_count > rows.size() ? rows.size() : line_count));	ctrlScrollBar *scroll = GetCtrl<ctrlScrollBar>(0);	for(unsigned short i = 0; i < lines; ++i)	{		if(row_l_selection == i + scroll->GetPos())		{			// durchsichtig schwarze Markierung malen			DrawRectangle(GetX() + 2, GetY() + 2 + header_height + i*font->getHeight(), width - 4 - (scroll->GetVisible() ? 24 : 0), font->getHeight(), 0x80000000);		}		unsigned short pos = 0;		for(unsigned short c = 0; c < columns.size(); ++c)		{			if(columns.at(c).width == 0)				continue;			font->Draw(GetX()+2+pos, GetY()+2 + header_height + i*font->getHeight(),rows.at(i+scroll->GetPos()).columns.at(c), 0, (row_l_selection == i + scroll->GetPos() ? 0xFFFFAA00 : COLOR_YELLOW), 0, GetCtrl<ctrlButton>(c+1)->GetWidth(), "");			pos += GetCtrl<ctrlButton>(c+1)->GetWidth();		}	}	return true;}
开发者ID:MiyaxinPittahai,项目名称:s25rttr,代码行数:37,


示例10: DrawRectangle

// DrawQuads (GL_QUADS)void nuiSoftwarePainter::DrawQuadStrip(const nuiRenderArray* pArray){  int32 i;  int32 count = (pArray->GetSize() - 2) / 2;  for (i = 0; i < count; i++)  {    int32 ii = i << 1;    // Is the quad a special case?    const std::vector<nuiRenderArray::Vertex>& rCoords = pArray->GetVertices();    float x0 = rCoords[ii].mX, y0 = rCoords[ii+1].mY;    float x1 = rCoords[(ii+1)].mX, y1 = rCoords[(ii+1)].mY;    float x2 = rCoords[(ii+2)].mX, y2 = rCoords[(ii+2)].mY;    float x3 = rCoords[(ii+3)].mX, y3 = rCoords[(ii+3)].mY;    if (x0 == x3 && x1 == x2 && y0 == y1 && y2 == y3)    {      // This is an axis aligned rectangle      DrawRectangle(pArray, ii, ii+1, ii+3, ii+2);    }    else    {      // This is not a special quad, draw two triangles:      DrawTriangle(pArray, ii, ii+1, ii+2);      DrawTriangle(pArray, ii+1, ii+3, ii+2);    }  }}
开发者ID:jbl2024,项目名称:nui3,代码行数:29,


示例11: draw_mem

/////////////////////////////////////////////////////////////////////////////////// draw_mem function//// author: Shaun Gruenig, Hannah Aker, Kelsey Bellew//// description: This function call the appropriate GUI functions to create//      a graphical representation of the physical memory.///////////////////////////////////////////////////////////////////////////////////void draw_mem ( void ){    glClear ( GL_COLOR_BUFFER_BIT );    glutSetWindowTitle ( "Memory Contents" );    int i, j, yval;    int address_num = 0;    string t;    stringstream out;    char temp;    char *f;    int size = memvec.size();    for ( j = 0; j < 8; j++ )    {        for ( i = 0; i < 32; i++ )        {            yval = ScreenHeight - 25 * i;            out << address_num << "   ";            out << ( bitset<sizeof ( address ) * 8> ) memvec[address_num++];            t = out.str();            f = ( char* ) t.c_str();            DrawTextString ( f, j * 130 + 3, yval - 20, Black );            out.str ( "" );            DrawRectangle ( ( j * 130 ) + 30, yval, ( j + 1 ) * 130, 					yval - 25, Black );        }    }    glFlush();}
开发者ID:kelseyb,项目名称:csc456prog4,代码行数:44,


示例12: DrawRectangle

void HPlotter::PlotFillBinGrid(AppCtx* context){    if (!IsEnabled())        return;    double startX, startY;    double finishX, finishY;    for (int i = 0; i < context->sprData.binGrid.nBinCols; i++)        for (int j = 0; j < context->sprData.binGrid.nBinRows; j++)        {            startX  = context->sprData.binGrid.bins[i][j].xCoord - context->sprData.binGrid.binWidth / 2.0;            startY  = context->sprData.binGrid.bins[i][j].yCoord - context->sprData.binGrid.binHeight / 2.0;            finishX = context->sprData.binGrid.bins[i][j].xCoord + context->sprData.binGrid.binWidth / 2.0;            finishY = context->sprData.binGrid.bins[i][j].yCoord + context->sprData.binGrid.binHeight / 2.0;            DrawRectangle(startX, startY, finishX, finishY, Color_LightPink, false);            char str1[255], str2[255];            sprintf(str1, Aux::SciFormat.c_str(), context->sprData.binGrid.bins[i][j].sumBufPotential);            sprintf(str2, Aux::SciFormat.c_str(), context->sprData.binGrid.bins[i][j].sumPotential);            DrawTextInPoint(string(str1),                 context->sprData.binGrid.bins[i][j].xCoord - context->sprData.binGrid.binWidth / 2.0,                 context->sprData.binGrid.bins[i][j].yCoord - context->sprData.binGrid.binHeight / 2.5, 0.3);            DrawTextInPoint(string(str2),                 context->sprData.binGrid.bins[i][j].xCoord - context->sprData.binGrid.binWidth / 2.0,                 context->sprData.binGrid.bins[i][j].yCoord + context->sprData.binGrid.binHeight / 3.2, 0.3);        }}
开发者ID:chuanwj,项目名称:vlsi-experimental,代码行数:29,


示例13: DrawEndingScreen

// Ending Screen Draw logicvoid DrawEndingScreen(void){    // TODO: Draw ENDING screen here!    DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), BLUE);    DrawText("ENDING SCREEN", 20, 20, 40, DARKBLUE);    DrawText("PRESS ENTER to RETURN to TITLE SCREEN", 120, 220, 20, DARKBLUE);}
开发者ID:raysan5,项目名称:raylib,代码行数:8,


示例14: Draw3D

/** *  Zeichenmethode. * *  @return @p true bei Erfolg, @p false bei Fehler * *  @author OLiver */bool ctrlList::Draw_(){    ctrlScrollBar* scrollbar = GetCtrl<ctrlScrollBar>(0);    // Box malen    Draw3D(GetX(), GetY(), width_, height_, tc, 2);    // Scrolleiste zeichnen    DrawControls();    // Wieviele Linien anzeigen?    unsigned show_lines = (pagesize > lines.size() ? unsigned(lines.size()) : pagesize);    // Listeneintr
C++ DrawScene函数代码示例
C++ DrawRect函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。