- fixed some minor bugs
This commit is contained in:
parent
9598832d34
commit
c54c85768a
|
@ -107,6 +107,20 @@ namespace vcg
|
||||||
|
|
||||||
typedef unsigned int PRIMITIVE_MODALITY_MASK;
|
typedef unsigned int PRIMITIVE_MODALITY_MASK;
|
||||||
|
|
||||||
|
static PRIMITIVE_MODALITY_MASK addPrimitiveModality(const PRIMITIVE_MODALITY_MASK& mask,PRIMITIVE_MODALITY newpm)
|
||||||
|
{
|
||||||
|
PRIMITIVE_MODALITY_MASK res(mask);
|
||||||
|
res = res | newpm;
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
static PRIMITIVE_MODALITY_MASK removePrimitiveModality(const PRIMITIVE_MODALITY_MASK& mask,PRIMITIVE_MODALITY removedpm)
|
||||||
|
{
|
||||||
|
PRIMITIVE_MODALITY_MASK res(mask);
|
||||||
|
res = res & ~(removedpm);
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
template<typename ATT_NAMES_DERIVED_CLASS>
|
template<typename ATT_NAMES_DERIVED_CLASS>
|
||||||
class RenderingAtts
|
class RenderingAtts
|
||||||
{
|
{
|
||||||
|
|
|
@ -44,14 +44,21 @@ namespace vcg
|
||||||
{
|
{
|
||||||
struct PerViewPerRenderingModalityGLOptions
|
struct PerViewPerRenderingModalityGLOptions
|
||||||
{
|
{
|
||||||
|
Color4b _permesh_color;
|
||||||
|
|
||||||
float _perpoint_pointsize;
|
float _perpoint_pointsize;
|
||||||
bool _perpoint_pointsmooth;
|
bool _perpoint_pointsmooth;
|
||||||
bool _perpoint_pointattenuation;
|
bool _perpoint_pointattenuation;
|
||||||
|
bool _use_perpoint_fixedcolor;
|
||||||
Color4b _perpoint_fixedcolor;
|
Color4b _perpoint_fixedcolor;
|
||||||
|
|
||||||
float _peredge_linesize;
|
float _peredge_linesize;
|
||||||
|
bool _use_peredge_fixedcolor;
|
||||||
Color4b _peredge_fixedcolor;
|
Color4b _peredge_fixedcolor;
|
||||||
|
|
||||||
|
bool _use_perface_fixedcolor;
|
||||||
|
Color4b _perface_fixedcolor;
|
||||||
|
|
||||||
|
|
||||||
PerViewPerRenderingModalityGLOptions()
|
PerViewPerRenderingModalityGLOptions()
|
||||||
:_perpoint_pointsize(1.0f),_perpoint_pointsmooth(false),_perpoint_pointattenuation(true),_perpoint_fixedcolor(Color4b(Color4b::White)),_peredge_linesize(1.0f),_peredge_fixedcolor(Color4b(Color4b::DarkGray))
|
:_perpoint_pointsize(1.0f),_perpoint_pointsmooth(false),_perpoint_pointattenuation(true),_perpoint_fixedcolor(Color4b(Color4b::White)),_peredge_linesize(1.0f),_peredge_fixedcolor(Color4b(Color4b::DarkGray))
|
||||||
|
@ -72,6 +79,7 @@ namespace vcg
|
||||||
return (*this);
|
return (*this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void copyData(const PerViewPerRenderingModalityGLOptions& opts)
|
void copyData(const PerViewPerRenderingModalityGLOptions& opts)
|
||||||
{
|
{
|
||||||
|
@ -141,7 +149,7 @@ namespace vcg
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool getPerViewInfo(UNIQUE_VIEW_ID_TYPE viewid,PRIMITIVE_MODALITY_MASK* mask,RendAtts* rendatts,vcg::PerViewPerRenderingModalityGLOptions* opts)
|
bool getPerViewInfo(UNIQUE_VIEW_ID_TYPE viewid,PRIMITIVE_MODALITY_MASK* mask,RendAtts* rendatts,GL_OPTIONS_DERIVED_TYPE* opts)
|
||||||
{
|
{
|
||||||
typename ViewsMap::iterator it = _perviewreqatts.find(viewid);
|
typename ViewsMap::iterator it = _perviewreqatts.find(viewid);
|
||||||
if (it == _perviewreqatts.end())
|
if (it == _perviewreqatts.end())
|
||||||
|
|
|
@ -692,8 +692,10 @@ namespace vcg {
|
||||||
}
|
}
|
||||||
|
|
||||||
// set faux edge flags according to internals faces
|
// set faux edge flags according to internals faces
|
||||||
if (indexedFaces[i].edge[j]) m.face[i].SetF(j);
|
if (indexedFaces[i].edge[j])
|
||||||
else m.face[i].ClearF(j);
|
m.face[i].SetF(j);
|
||||||
|
else
|
||||||
|
m.face[i].ClearF(j);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (HasPerFaceNormal(m))
|
if (HasPerFaceNormal(m))
|
||||||
|
|
|
@ -49,7 +49,7 @@ namespace vcg
|
||||||
vcg::NotThreadSafeGLMeshAttributesMultiViewerBOManager<MESH_TYPE,UNIQUE_VIEW_ID_TYPE,GL_OPTIONS_DERIVED_TYPE>::meshAttributesUpdated(hasmeshconnectivitychanged,changedrendatts);
|
vcg::NotThreadSafeGLMeshAttributesMultiViewerBOManager<MESH_TYPE,UNIQUE_VIEW_ID_TYPE,GL_OPTIONS_DERIVED_TYPE>::meshAttributesUpdated(hasmeshconnectivitychanged,changedrendatts);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool getPerViewInfo(UNIQUE_VIEW_ID_TYPE viewid,vcg::GLMeshAttributesInfo::PRIMITIVE_MODALITY_MASK* mask,vcg::GLMeshAttributesInfo::RendAtts* rendatts,vcg::PerViewPerRenderingModalityGLOptions* opts)
|
bool getPerViewInfo(UNIQUE_VIEW_ID_TYPE viewid,vcg::GLMeshAttributesInfo::PRIMITIVE_MODALITY_MASK* mask,vcg::GLMeshAttributesInfo::RendAtts* rendatts,GL_OPTIONS_DERIVED_TYPE* opts)
|
||||||
{
|
{
|
||||||
QReadLocker locker(&_lock);
|
QReadLocker locker(&_lock);
|
||||||
return vcg::NotThreadSafeGLMeshAttributesMultiViewerBOManager<MESH_TYPE,UNIQUE_VIEW_ID_TYPE,GL_OPTIONS_DERIVED_TYPE>::getPerViewInfo(viewid,mask,rendatts,opts);
|
return vcg::NotThreadSafeGLMeshAttributesMultiViewerBOManager<MESH_TYPE,UNIQUE_VIEW_ID_TYPE,GL_OPTIONS_DERIVED_TYPE>::getPerViewInfo(viewid,mask,rendatts,opts);
|
||||||
|
|
Loading…
Reference in New Issue