本文整理汇总了C++中TextSymbol::pixelOffset方法的典型用法代码示例。如果您正苦于以下问题:C++ TextSymbol::pixelOffset方法的具体用法?C++ TextSymbol::pixelOffset怎么用?C++ TextSymbol::pixelOffset使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TextSymbol
的用法示例。
在下文中一共展示了TextSymbol::pixelOffset方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: TextSymbol
/**
* Creates a field schema that we'll later use as a labeling template for
* TrackNode instances.
*/
void
createFieldSchema( TrackNodeFieldSchema& schema )
{
// draw the track name above the icon:
TextSymbol* nameSymbol = new TextSymbol();
nameSymbol->pixelOffset()->set( 0, 2+ICON_SIZE/2 );
nameSymbol->alignment() = TextSymbol::ALIGN_CENTER_BOTTOM;
nameSymbol->halo()->color() = Color::Black;
nameSymbol->size() = nameSymbol->size()->eval() + 2.0f;
schema[FIELD_NAME] = TrackNodeField(nameSymbol, false); // false => static label (won't change after set)
// draw the track coordinates below the icon:
TextSymbol* posSymbol = new TextSymbol();
posSymbol->pixelOffset()->set( 0, -2-ICON_SIZE/2 );
posSymbol->alignment() = TextSymbol::ALIGN_CENTER_TOP;
posSymbol->fill()->color() = Color::Yellow;
posSymbol->size() = posSymbol->size()->eval() - 2.0f;
schema[FIELD_POSITION] = TrackNodeField(posSymbol, true); // true => may change at runtime
// draw some other field to the left:
TextSymbol* numberSymbol = new TextSymbol();
numberSymbol->pixelOffset()->set( -2-ICON_SIZE/2, 0 );
numberSymbol->alignment() = TextSymbol::ALIGN_RIGHT_CENTER;
schema[FIELD_NUMBER] = TrackNodeField(numberSymbol, false);
}
示例2: createTrackSchema
void createTrackSchema(TrackNodeFieldSchema& schema)
{
// draw the track name above the icon:
TextSymbol* nameSymbol = new TextSymbol();
nameSymbol->pixelOffset()->set( 0, 2+TRACK_ICON_SIZE/2 );
nameSymbol->alignment() = TextSymbol::ALIGN_CENTER_BOTTOM;
nameSymbol->halo()->color() = Color::Black;
schema[TRACK_FIELD_NAME] = TrackNodeField(nameSymbol, false);
}
示例3: if
//.........这里部分代码省略.........
style.getOrCreate<TextSymbol>()->haloImplementation() = osgText::Text::DEPTH_RANGE;
else if ( match(c.value(), "stencil-buffer") )
style.getOrCreate<TextSymbol>()->haloImplementation() = osgText::Text::STENCIL_BUFFER;
else if ( match(c.value(), "delayed-depth-writes") )
style.getOrCreate<TextSymbol>()->haloImplementation() = osgText::Text::DELAYED_DEPTH_WRITES;
}
else if ( match(c.key(), "text-remove-duplicate-labels") ) {
if ( c.value() == "true" )
style.getOrCreate<TextSymbol>()->removeDuplicateLabels() = true;
else if (c.value() == "false")
style.getOrCreate<TextSymbol>()->removeDuplicateLabels() = false;
}
else if ( match(c.key(), "text-align") ) {
if ( match(c.value(), "left-top") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_LEFT_TOP;
else if ( match(c.value(), "left-center") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_LEFT_CENTER;
else if ( match(c.value(), "left-bottom") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_LEFT_BOTTOM;
else if ( match(c.value(), "center-top") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_CENTER_TOP;
else if ( match(c.value(), "center-center") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_CENTER_CENTER;
else if ( match(c.value(), "center-bottom") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_CENTER_BOTTOM;
else if ( match(c.value(), "right-top") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_RIGHT_TOP;
else if ( match(c.value(), "right-center") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_RIGHT_CENTER;
else if ( match(c.value(), "right-bottom") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_RIGHT_BOTTOM;
else if ( match(c.value(), "left-base-line") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_LEFT_BASE_LINE;
else if ( match(c.value(), "center-base-line") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_CENTER_BASE_LINE;
else if ( match(c.value(), "right-base-line") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_RIGHT_BASE_LINE;
else if ( match(c.value(), "left-bottom-base-line") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_LEFT_BOTTOM_BASE_LINE;
else if ( match(c.value(), "center-bottom-base-line") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_CENTER_BOTTOM_BASE_LINE;
else if ( match(c.value(), "right-bottom-base-line") )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_RIGHT_BOTTOM_BASE_LINE;
else if ( match(c.value(), "base-line" ) )
style.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_BASE_LINE;
}
else if ( match(c.key(), "text-layout") ) {
if ( match(c.value(), "ltr") )
style.getOrCreate<TextSymbol>()->layout() = TextSymbol::LAYOUT_LEFT_TO_RIGHT;
else if ( match(c.value(), "rtl" ) )
style.getOrCreate<TextSymbol>()->layout() = TextSymbol::LAYOUT_RIGHT_TO_LEFT;
else if ( match(c.value(), "vertical" ) )
style.getOrCreate<TextSymbol>()->layout() = TextSymbol::LAYOUT_VERTICAL;
}
else if ( match(c.key(), "text-content") || match(c.key(), "text") ) {
style.getOrCreate<TextSymbol>()->content() = StringExpression( c.value() );
}
else if ( match(c.key(), "text-priority") ) {
style.getOrCreate<TextSymbol>()->priority() = NumericExpression( c.value() );
}
else if ( match(c.key(), "text-provider") ) {
style.getOrCreate<TextSymbol>()->provider() = c.value();
}
else if ( match(c.key(), "text-encoding") ) {
if (match(c.value(), "utf-8"))
style.getOrCreate<TextSymbol>()->encoding() = TextSymbol::ENCODING_UTF8;
else if (match(c.value(), "utf-16"))
style.getOrCreate<TextSymbol>()->encoding() = TextSymbol::ENCODING_UTF16;
else if (match(c.value(), "utf-32"))
style.getOrCreate<TextSymbol>()->encoding() = TextSymbol::ENCODING_UTF32;
else if (match(c.value(), "ascii"))
style.getOrCreate<TextSymbol>()->encoding() = TextSymbol::ENCODING_ASCII;
else
style.getOrCreate<TextSymbol>()->encoding() = TextSymbol::ENCODING_ASCII;
}
else if ( match(c.key(), "text-declutter") ) {
style.getOrCreate<TextSymbol>()->declutter() = as<bool>(c.value(), defaults.declutter().get() );
}
else if ( match(c.key(), "text-occlusion-cull") ) {
style.getOrCreate<TextSymbol>()->occlusionCull() = as<bool>(c.value(), defaults.occlusionCull().get() );
}
else if ( match(c.key(), "text-occlusion-cull-altitude") ) {
style.getOrCreate<TextSymbol>()->occlusionCullAltitude() = as<double>(c.value(), defaults.occlusionCullAltitude().get() );
}
else if ( match(c.key(), "text-script") ) {
style.getOrCreate<TextSymbol>()->script() = StringExpression(c.value());
}
else if ( match(c.key(), "text-offset-x") ) {
style.getOrCreate<TextSymbol>()->pixelOffset()->x() = as<double>(c.value(), defaults.pixelOffset()->x() );
}
else if ( match(c.key(), "text-offset-y") ) {
style.getOrCreate<TextSymbol>()->pixelOffset()->y() = as<double>(c.value(), defaults.pixelOffset()->y() );
}
else if ( match(c.key(), "text-rotation") ) {
style.getOrCreate<TextSymbol>()->onScreenRotation() = NumericExpression( c.value() );
}
else if ( match(c.key(), "text-geographic-course") ) {
style.getOrCreate<TextSymbol>()->geographicCourse() = NumericExpression( c.value() );
}
}