Skip to content

Commit

Permalink
重大なバグ修正
Browse files Browse the repository at this point in the history
  • Loading branch information
dc1394 committed Jul 4, 2019
1 parent 6ee9422 commit 0e73337
Showing 1 changed file with 49 additions and 49 deletions.
98 changes: 49 additions & 49 deletions SchracVisualize_Direct3D_11/SchracVisualize_Direct3D_11.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@
#include "SDKmisc.h"
#include "orbitaldensityrand/orbitaldensityrand.h"
#include "orbitaldensityrand/utility/utility.h"
#include <array> // for std::array
#include <numeric> // for std::iota
#include <optional> // for std::optional
#include <boost/cast.hpp> // for boost::numeric_cast
Expand Down Expand Up @@ -55,25 +54,25 @@ struct CBChangesEveryFrame2

//! A global variable (constant).
/*!
?????????
カメラの位置の倍率
*/
static auto constexpr MAGNIFICATION = 1.2f;

//! A global variable (constant).
/*!
?????(??)
画面サイズ(高さ)
*/
static auto constexpr WINDOWHEIGHT = 960;

//! A global variable (constant).
/*!
?????(?)
画面サイズ(幅)
*/
static auto constexpr WINDOWWIDTH = 1280;

//! A global variable.
/*!
CPU??????
CPUのスレッド数
*/
static auto const cputhreads = tbb::task_scheduler_init::default_num_threads();

Expand All @@ -85,8 +84,8 @@ CModelViewerCamera camera;

//! A lambda expression.
/*!
CDXUTTextHelper???????????????
\param spline CDXUTTextHelper??????
CDXUTTextHelperへのポインタを解放するラムダ式
\param spline CDXUTTextHelperへのポインタ
*/
static auto const deleter = [](auto ptxthelper) {
if (ptxthelper) {
Expand All @@ -103,43 +102,43 @@ CDXUTDialogResourceManager dialogResourceManager;

//! A global variable.
/*!
???????????
描画する軌道の識別数値
*/
auto drawdata = 1U;

//! A global variable.
/*!
??????
計算開始時間
*/
double drawstarttime;

//! A global variable.
/*!
??????
計算終了時間
*/
double drawendtime;

//! A global variable.
/*!
???????????????
計算が開始したことを示すフラグ
*/
auto first = true;

//! A global variable.
/*!
???????????????
計算が終了したことを示すフラグ
*/
auto end = false;

//! A global variable.
/*!
?????????
バッファーリソース
*/
D3D11_BUFFER_DESC g_bd;

//! A global variable.
/*!
Direct3D????
Direct3Dデバイス
*/
ID3D11Device* g_pd3dDevice;

Expand All @@ -161,37 +160,37 @@ Microsoft::WRL::ComPtr<ID3D11Buffer> pCBNeverChanges;

//! A global variable.
/*!
?????????
データオブジェクト
*/
std::shared_ptr<getdata::GetData> pgd;

//! A global variable.
/*!
??????????
インデックスバッファ
*/
Microsoft::WRL::ComPtr<ID3D11Buffer> pIndexBuffer;

//! A global variable.
/*!
??????????????????????
軌道・電子密度の乱数生成クラスのオブジェクト
*/
std::optional<OrbitalDensityRand> podr;

//! A global variable.
/*!
?????????
ピクセルシェーダー
*/
Microsoft::WRL::ComPtr<ID3D11PixelShader> pPixelShaderBox;

//! A global variable.
/*!
???????
テキスト表示用
*/
std::unique_ptr<CDXUTTextHelper, decltype(deleter)> pTxtHelper(nullptr, deleter);

//! A global variable.
/*!
??????
頂点バッファ
*/
Microsoft::WRL::ComPtr<ID3D11Buffer> pVertexBuffer;

Expand All @@ -202,13 +201,13 @@ Microsoft::WRL::ComPtr<ID3D11InputLayout> pVertexLayout;

//! A global variable.
/*!
???????????
バーテックスシェーダー
*/
Microsoft::WRL::ComPtr<ID3D11VertexShader> pVertexShaderBox;

//! A global variable.
/*!
???????????????
実部と虚部のどちらを描画するか
*/
auto reim = OrbitalDensityRand::Re_Im_type::REAL;

Expand Down Expand Up @@ -246,8 +245,8 @@ void CALLBACK OnGUIEvent(UINT nEvent, int nControlID, CDXUTControl* pControl, vo

//! A function.
/*!
??????????????
\return ?????????
ウィンドウタイトルを生成する
\return ウィンドウタイトル
*/
std::wstring CreateWindowTitle();

Expand All @@ -259,58 +258,56 @@ void InitApp();

//! A function.
/*!
????
\param pd3dImmediateContext Direct3D???????????
描画する
\param pd3dImmediateContext Direct3Dのデバイスコンテキスト
*/
HRESULT OnRender(ID3D11DeviceContext* pd3dImmediateContext);

//! A function.
/*!
??????????????????
テキストファイルからデータを読み込む
*/
void ReadData();

//! A function.
/*!
?????
\param pd3dDevice Direct3D????
再描画する
*/
void Redraw();

//! A function.
/*!
???????true???
再描画フラグをtrueにする
*/
void RedrawFlagTrue();

//! A function.
/*!
?????????????
画面の左上に情報を表示する
*/
void RenderText(double fTime);

//! A function.
/*!
??????
\param pd3dDevice Direct3D????
点を描画する
*/
HRESULT RenderPoint();

//! A function.
/*!
????????????
カメラの位置をセットする
*/
void SetCamera();

//! A function.
/*!
UI?????
UIを配置する
*/
void SetUI();

//! A function.
/*!
???????
描画を中止する
*/
void StopDraw();

Expand Down Expand Up @@ -640,12 +637,15 @@ void CALLBACK OnGUIEvent(UINT nEvent, int nControlID, CDXUTControl* pControl, vo
podr.emplace(pgd);
first = true;
::SetWindowText(DXUTGetHWND(), CreateWindowTitle().c_str());
hud.RemoveAllControls();
drawdata = 1U;
SetUI();
Redraw();
break;

case IDC_COMBOBOX:
{
auto const pItem = (static_cast<CDXUTComboBox*>(pControl))->GetSelectedItem();
auto const pItem = (dynamic_cast<CDXUTComboBox*>(pControl))->GetSelectedItem();
if (pItem)
{
drawdata = reinterpret_cast<std::uint32_t>(pItem->pData);
Expand All @@ -668,12 +668,12 @@ void CALLBACK OnGUIEvent(UINT nEvent, int nControlID, CDXUTControl* pControl, vo

case IDC_SLIDER:
RedrawFlagTrue();
podr->Verticessize(static_cast<std::vector<SimpleVertex>::size_type>((reinterpret_cast<CDXUTSlider*>(pControl))->GetValue()));
podr->Verticessize(static_cast<std::vector<SimpleVertex>::size_type>((dynamic_cast<CDXUTSlider*>(pControl))->GetValue()));
Redraw();
break;

default:
BOOST_ASSERT(!"???????!");
BOOST_ASSERT(!"何かがおかしい!");
break;
}
}
Expand Down Expand Up @@ -772,7 +772,7 @@ HRESULT RenderPoint()
break;

default:
BOOST_ASSERT(!"index????????!");
BOOST_ASSERT(!"indexの指定がおかしい!");
break;
}
}
Expand Down Expand Up @@ -802,7 +802,7 @@ HRESULT RenderPoint()
break;

default:
BOOST_ASSERT(!"index????????!");
BOOST_ASSERT(!"indexの指定がおかしい!");
break;
}
}
Expand Down Expand Up @@ -840,14 +840,14 @@ HRESULT RenderPoint()
break;

default:
BOOST_ASSERT(!"index????????!");
BOOST_ASSERT(!"indexの指定がおかしい!");
break;
}
}
break;

default:
BOOST_ASSERT(!"???????????!");
BOOST_ASSERT(!"量子数の指定が異常です!");
break;
}

Expand All @@ -868,7 +868,7 @@ void ReadData()
pgd = std::make_shared<getdata::GetData>(utility::myOpenFile());
}
catch (std::runtime_error const & e) {
::MessageBox(nullptr, utility::my_mbstowcs(e.what()).c_str(), L"???", MB_OK | MB_ICONWARNING);
::MessageBox(nullptr, utility::my_mbstowcs(e.what()).c_str(), L"エラー", MB_OK | MB_ICONWARNING);
continue;
}
break;
Expand All @@ -877,7 +877,7 @@ void ReadData()

//! A function.
/*!
?????
再描画する
*/
void Redraw()
{
Expand All @@ -893,7 +893,7 @@ void Redraw()
indices.resize(podr->Verticessize);
std::iota(indices.begin(), indices.end(), 0);

// ?????????
// バッファーリソース
D3D11_BUFFER_DESC bd;

ZeroMemory(&bd, sizeof(bd));
Expand Down Expand Up @@ -1022,7 +1022,7 @@ void SetUI()
break;

default:
throw std::runtime_error("g???????????????");
throw std::runtime_error("g以上の軌道には対応していません");
break;
}

Expand All @@ -1033,7 +1033,7 @@ void SetUI()
}
}

// ?????
// 角度の調整
hud.AddStatic(IDC_OUTPUT, L"Vertex size", 20, iY += 34, 125, 22);
hud.GetStatic(IDC_OUTPUT)->SetTextColor(D3DCOLOR_ARGB(255, 255, 255, 255));
hud.AddSlider(IDC_SLIDER, 35, iY += 24, 125, 22, 0, 1000000, OrbitalDensityRand::VERTICESSIZE_INIT_VALUE);
Expand Down Expand Up @@ -1084,7 +1084,7 @@ int WINAPI wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance,

InitApp();

// ????????
// ウィンドウを生成
auto const dispx = ::GetSystemMetrics(SM_CXSCREEN);
auto const dispy = ::GetSystemMetrics(SM_CYSCREEN);
auto const xpos = (dispx - WINDOWWIDTH) / 2;
Expand Down

0 comments on commit 0e73337

Please sign in to comment.