コード例 #1
0
ファイル: Perspective.cpp プロジェクト: FallenShard/vesper
    void PerspectiveSensor::configure()
    {
        float aspect = m_imageSize.x() / static_cast<float>(m_imageSize.y());
        float recip = 1.f / (m_farClip - m_nearClip);
        float cot = 1.f / std::tanf(degToRad(m_fov / 2.f));

        Eigen::Matrix4f mat;
        mat <<
            cot, 0, 0, 0,
            0, cot, 0, 0,
            0, 0, m_farClip * recip, -m_nearClip * m_farClip * recip,
            0, 0, 1, 0;
        Transform perspective(mat);
        Transform scale = Transform::createScale(Vector3f(0.5f, 0.5f * aspect, 1.f));
        Transform shift = Transform::createTranslation(Vector3f(1.f, 1.f / aspect, 0.f));

        m_sampleToCamera = (scale * shift * perspective).invert();

        if (!m_filter)
        {
            m_filter = std::make_shared<GaussianFilter>(AttributeList());
            m_filter->configure();
        }
    }
コード例 #2
0
void StarSystem::beginElement( void *userData, const XML_Char *name, const XML_Char **atts )
{
    ( (StarSystem*) userData )->beginElement( name, AttributeList( atts ) );
}
コード例 #3
0
ファイル: convertor.cpp プロジェクト: scim-im/scim-wnn
AttributeList Convertor::getAttributeList() {
    return(AttributeList());
}