本文整理汇总了C++中UnitCell::setCellParameters方法的典型用法代码示例。如果您正苦于以下问题:C++ UnitCell::setCellParameters方法的具体用法?C++ UnitCell::setCellParameters怎么用?C++ UnitCell::setCellParameters使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnitCell
的用法示例。
在下文中一共展示了UnitCell::setCellParameters方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: toggleUnitCell
void Crystal::toggleUnitCell()
{
if (m_molecule->unitCell()) {
m_molecule->setUnitCell(NULL);
m_molecule->emitChanged(Molecule::UnitCell | Molecule::Removed);
}
else {
UnitCell *cell = new UnitCell;
cell->setCellParameters(static_cast<Real>(3.0),
static_cast<Real>(3.0),
static_cast<Real>(3.0),
static_cast<Real>(90.0) * DEG_TO_RAD,
static_cast<Real>(90.0) * DEG_TO_RAD,
static_cast<Real>(90.0) * DEG_TO_RAD);
m_molecule->setUnitCell(cell);
m_molecule->emitChanged(Molecule::UnitCell | Molecule::Added);
editUnitCell();
}
}
示例2:
TEST(UnitCellTest, cellParameters)
{
Real a = static_cast<Real>(2.0);
Real b = static_cast<Real>(3.0);
Real c = static_cast<Real>(4.0);
Real alpha = static_cast<Real>(70 * DEG_TO_RAD);
Real beta = static_cast<Real>(120 * DEG_TO_RAD);
Real gamma = static_cast<Real>(85 * DEG_TO_RAD);
UnitCell unitCell;
unitCell.setCellParameters(a, b, c, alpha, beta, gamma);
EXPECT_FLOAT_EQ(static_cast<float>(a), static_cast<float>(unitCell.a()));
EXPECT_FLOAT_EQ(static_cast<float>(b), static_cast<float>(unitCell.b()));
EXPECT_FLOAT_EQ(static_cast<float>(c), static_cast<float>(unitCell.c()));
EXPECT_FLOAT_EQ(static_cast<float>(alpha),
static_cast<float>(unitCell.alpha()));
EXPECT_FLOAT_EQ(static_cast<float>(beta),
static_cast<float>(unitCell.beta()));
EXPECT_FLOAT_EQ(static_cast<float>(gamma),
static_cast<float>(unitCell.gamma()));
}