画像を円状に配置して回転させたいって事ですかね?
座標を回転させて、それと同じ角度で回転させた画像をDrawRotaGraph()で描画すれば出来ると思いますよ。
とりあえず、二次元座標を回転させる関数はDXライブラリにはないっぽいんで、
他の方が言ってるように自前で計算するしかないと思いますよ。
↓以下画像を円状に配置して回転させるサンプル。
#include "DxLib.h"
#include <math.h>//←サインとかコサインとか使うときに必要です
//とりあえず座標回転関数(ネットで調べたののまるパクリですが…)
//xc、ycを中心にx、 y座標をAngle(ラジアンで指定・時計回り)で回転させたのをX、Yに返します
void rotation2D(int* X, int* Y, int x, int y, int xc, int yc, double Angle)
{
*X = int((x - xc) * cos(Angle) - (y - yc) * sin(Angle) + xc);
*Y = int((x - xc) * sin(Angle) + (y - yc) * cos(Angle) + yc);
}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
// ウインドウモードで起動
ChangeWindowMode(TRUE);
SetGraphMode(800, 600, 32);
if (DxLib_Init() < 0) return -1;
// 描画先を裏画面に
SetDrawScreen(DX_SCREEN_BACK);
//変数宣言
int X, Y;
double Angle = 0, angle;
//画像読み込み(大体100x100位のサイズの画像を想定してます)
int GrHandle = LoadGraph("Test.png");
while (ProcessMessage() == 0)
{
//画面クリア
ClearDrawScreen();
//円状に画像を12個描画
for (int i = 0; i < 12; i ++)
{
//角度指定※DX_PIはDXライブラリで登録されてる定数でπ(ラジアンで180度)が定義されてます
angle = Angle +(DX_PI / 6 * i);
//座標を回転させる
rotation2D(&X, &Y, 400, 100, 400, 300, angle);
//画像を回転描画
DrawRotaGraph(X, Y, 1, angle, GrHandle, TRUE, FALSE);
}
// 裏画面の内容を表画面に
ScreenFlip();
//基準座標回転角度加算※DX_TWO_PIはDXライブラリで登録されてる定数でπの二倍(ラジアンで360度)が定義されてます
Angle += DX_TWO_PI / 720;
if (Angle > DX_TWO_PI)Angle -= DX_TWO_PI;
}
//終了処理
DxLib_End();
return 0;
}