本文整理汇总了C++中VisualGraphics::getCanvasPixelHeight方法的典型用法代码示例。如果您正苦于以下问题:C++ VisualGraphics::getCanvasPixelHeight方法的具体用法?C++ VisualGraphics::getCanvasPixelHeight怎么用?C++ VisualGraphics::getCanvasPixelHeight使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类VisualGraphics
的用法示例。
在下文中一共展示了VisualGraphics::getCanvasPixelHeight方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: initWithStyledString
bool VisualTextureContainer::initWithStyledString(VisualStyledString& styledString) {
this->releaseTextureData();
bool success = true;
const VisualString* aVisualString = &(styledString);
VisualStringStyle& stringStyle = styledString.getStyle();
if (aVisualString->getNumberOfCharacters() == 0) {
return false;
}
VisualGraphics* theVisualGraphics = VisualGraphics::getInstance();
uint32 maxPixelWidth = theVisualGraphics->getCanvasPixelWidth();
uint32 maxPixelHeight = theVisualGraphics->getCanvasPixelHeight();
this->textureName = theVisualGraphics->getNextFreeTextureName();
this->aTextureIsSet = true;
VisualTextureContainer::textureRefCountMap[this->textureName] = 1;
this->useRectExtension = theVisualGraphics->canUseTextureRectExtension();
#if TARGET_OS_MAC
char alignmentStr[32];
switch (stringStyle.horizontalAlignment) {
case (kLeftAligned):
strcpy(alignmentStr, "left");
break;
case(kCenterAligned):
strcpy(alignmentStr, "center");
break;
case(kRightAligned):
strcpy(alignmentStr, "right");
break;
default:
break;
}
success = getDimensionsOfCocoaStringBitmap((void*)aVisualString, (void*)&stringStyle, &(this->imageRect.width), &(this->imageRect.height), maxPixelWidth, maxPixelHeight, alignmentStr);
if (!success) {
return success;
}
if (this->useRectExtension == false) {
this->textureRect.width = theVisualGraphics->power2Ceiling(this->imageRect.width);
this->textureRect.height = theVisualGraphics->power2Ceiling(this->imageRect.height);
} else {
this->textureRect.width = this->imageRect.width;
this->textureRect.height = this->imageRect.height;
}
PixelColor* pixelBuffer = (uint32*)calloc(this->textureRect.width * this->textureRect.height, sizeof(uint32));
success = getCocoaStringBitmapData((void*)&styledString, this->textureRect.width, this->textureRect.height, alignmentStr, &(pixelBuffer));
success = theVisualGraphics->copyARGBBitmapDataToTexture(this->textureName, this->textureRect.width, this->textureRect.height, this->useRectExtension, const_cast<const uint32**>(&(pixelBuffer)));
#endif
#if TARGET_OS_WIN
wchar_t* stringValueRef = (wchar_t*)(styledString.getCharactersPointer());
uint8 red = (uint8)(stringStyle.fontColor.r * 255.0f);
uint8 green = (uint8)(stringStyle.fontColor.g * 255.0f);
uint8 blue = (uint8)(stringStyle.fontColor.b * 255.0f);
if (!stringValueRef) {
success = false;
return success;
}
success = theVisualGraphics->makeTextureOfStringWin(stringValueRef, styledString.getNumberOfCharacters(), this->textureName, this->textureRect.width, this->textureRect.height, this->imageRect.width, this->imageRect.height, stringStyle.fontNameStr, (uint16)stringStyle.fontSize, red, green, blue, stringStyle.horizontalAlignment, maxPixelWidth, maxPixelHeight);
#endif
if (this->useRectExtension == false) {
this->logicalSize.width = (double)this->imageRect.width / (double)this->textureRect.width;
this->logicalSize.height = (double)this->imageRect.height / (double)this->textureRect.height;
} else {
this->logicalSize.width = (double)this->textureRect.width;
this->logicalSize.height = (double)this->textureRect.height;
}
return success;
}
示例2: monitorRenderMessageProcess
void monitorRenderMessageProcess() {
static float framesPerSecond = 0.0f;
static uint16 frameCount = 0;
uint32 elapsedMilliseconds = 0;
uint32 remainingMilliseconds = 0;
VisualPlayerState* theVisualPlayerState = NULL;
VisualGraphics* theVisualGraphics = NULL;
uint8 playState;
char cStr64[64];
theVisualPlayerState = VisualPlayerState::getInstance();
elapsedMilliseconds = VisualTiming::getElapsedMilliSecsSinceReset("fps");
if (elapsedMilliseconds > 1000) {
framesPerSecond = (float)frameCount / (float)elapsedMilliseconds * 1000.0f;
frameCount = 0;
VisualTiming::resetTimestamp("fps");
}
frameCount++;
sprintf(cStr64, "%.2f", framesPerSecond);
setProcessInfo("FramesPerSecond", cStr64);
theVisualGraphics = VisualGraphics::getInstance();
setProcessInfo("RendererName",theVisualGraphics->getRendererName());
setProcessInfo("RendererVendor",theVisualGraphics->getRendererVendor());
setProcessInfo("RendererVersion",theVisualGraphics->getRendererVersion());
sprintf(cStr64, "%#x", theVisualGraphics->getGLVersion());
setProcessInfo("GLVersion", cStr64);
sprintf(cStr64, "%ld", theVisualGraphics->getMaxTextureSize());
setProcessInfo("Maximum Texture Size", cStr64);
// screen measurements
PixelRect screenRect = theVisualGraphics->getScreenRect();
sprintf(cStr64, "width: %d, height: %d, refreshRate: %d", screenRect.width, screenRect.height, theVisualGraphics->getRefreshRateOfScreen());
setProcessInfo("Screen", cStr64);
sprintf(cStr64, "%d", theVisualGraphics->getBitsPerPixelOfScreen());
setProcessInfo("BitsPerPixel", cStr64);
sprintf(cStr64, "%d", theVisualGraphics->getCanvasPixelHeight());
setProcessInfo("CanvasPixelHeight", cStr64);
sprintf(cStr64, "%d", theVisualGraphics->getCanvasPixelWidth());
setProcessInfo("CanvasPixelWidth", cStr64);
BottomLeftPositionedPixelRect theCanvasRect;
theCanvasRect = theVisualGraphics->getCanvasRect();
sprintf(cStr64, "bottom: %d, left: %d", theCanvasRect.bottomLeftPixel.y, theCanvasRect.bottomLeftPixel.x);
setProcessInfo("CanvasRectTopLeft", cStr64);
sprintf(cStr64, "width: %d, height: %d", theCanvasRect.pixelRect.width, theCanvasRect.pixelRect.height);
setProcessInfo("CanvasRectWidthHeight", cStr64);
/*
sprintf(cStr64, "top: %.2f, left: %.2f", theVisualGraphics->getMaxTopCoordOfCanvas(), theVisualGraphics->getMaxLeftCoordOfCanvas());
setProcessInfo("CoordMaxTopLeft", cStr64);
sprintf(cStr64, "bottom: %.2f, right: %.2f", theVisualGraphics->getMaxBottomCoordOfCanvas(), theVisualGraphics->getMaxRightCoordOfCanvas());
setProcessInfo("CoordMaxBottomRight", cStr64);
sprintf(cStr64, "near: %.2f, far: %.2f", theVisualGraphics->getMaxNearCoordOfCanvas(), theVisualGraphics->getMaxFarCoordOfCanvas());
setProcessInfo("CoordMaxNearFar", cStr64);
*/
BottomLeftPositionedPixelRect bottomLeftPositionedPixelRect = theVisualGraphics->getViewportRect();
sprintf(cStr64, "bottom: %d, left: %d, width: %d, height: %d", bottomLeftPositionedPixelRect.bottomLeftPixel.y, bottomLeftPositionedPixelRect.bottomLeftPixel.x, bottomLeftPositionedPixelRect.pixelRect.width, bottomLeftPositionedPixelRect.pixelRect.height);
setProcessInfo("ViewportRect", cStr64);
playState = theVisualPlayerState->getAudioPlayState();
switch (playState) {
case kAudioIsPlaying:
sprintf(cStr64, "kAudioIsPlaying");
break;
case kAudioPlayStarted:
sprintf(cStr64, "kAudioPlayStarted");
break;
case kAudioPlayResumed:
sprintf(cStr64, "kAudioPlayResumed");
break;
case kAudioPlayPaused:
sprintf(cStr64, "kAudioPlayPaused");
break;
case kAudioIsNotPlaying:
sprintf(cStr64, "kAudioIsNotPlaying");
break;
default:
sprintf(cStr64, "unknown");
}
setProcessInfo("AudioPlayState", cStr64);
elapsedMilliseconds = theVisualPlayerState->getElapsedAudioTime();
sprintf(cStr64, "%d", elapsedMilliseconds);
setProcessInfo("TrackTimeElapsed", cStr64);
remainingMilliseconds = theVisualPlayerState->getRemainingAudioTime();
//.........这里部分代码省略.........
示例3: initWithString
OSStatus VisualTextureContainer::initWithString(const VisualString& stringValue, VisualStringStyle& stringStyle) {
this->releaseTextureData();
if (this->pixelBuffer != NULL) {
free(this->pixelBuffer);
this->pixelBuffer = NULL;
}
OSStatus status = noErr;
VisualGraphics* theVisualGraphics = VisualGraphics::getInstance();
UInt16 maxPixelWidth = theVisualGraphics->getCanvasPixelWidth();
UInt16 maxPixelHeight = theVisualGraphics->getCanvasPixelHeight();
this->textureName = theVisualGraphics->getNextFreeTextureName();
this->textureIsSet = true;
VisualTextureContainer::textureRefCountMap[this->textureName] = 1;
this->useRectExtension = theVisualGraphics->canUseTextureRectExtension();
#if TARGET_OS_MAC
char alignmentStr[32];
switch (stringStyle.horizontalAlignment) {
case (kLeftAligned):
strcpy(alignmentStr, "left");
break;
case(kCenterAligned):
strcpy(alignmentStr, "center");
break;
case(kRightAligned):
strcpy(alignmentStr, "right");
break;
default:
break;
}
status = getDimensionsOfCocoaStringBitmap((void*)&stringValue, &(this->imageWidth), &(this->imageHeight), const_cast<char*>(stringStyle.fontNameStr), &(stringStyle.fontSize), stringStyle.fontColor.r, stringStyle.fontColor.g, stringStyle.fontColor.b, maxPixelWidth, maxPixelHeight, alignmentStr);
if (this->useRectExtension == false) {
this->textureWidth = theVisualGraphics->power2Ceiling(this->imageWidth);
this->textureHeight = theVisualGraphics->power2Ceiling(this->imageHeight);
} else {
this->textureWidth = this->imageWidth;
this->textureHeight = this->imageHeight;
}
this->pixelBuffer = (UInt32*)calloc(this->textureWidth * this->textureHeight, sizeof(UInt32));
status = getCocoaStringBitmapData((void*)&stringValue, this->textureWidth, this->textureHeight, const_cast<char*>(stringStyle.fontNameStr), stringStyle.fontSize, stringStyle.fontColor.r, stringStyle.fontColor.g, stringStyle.fontColor.b, alignmentStr, &(this->pixelBuffer));
theVisualGraphics->copyARGBBitmapDataToTexture(this->textureName, this->textureWidth, this->textureHeight, this->useRectExtension, this->pixelFormat, this->dataType, const_cast<const UInt32**>(&(this->pixelBuffer)));
#endif
#if TARGET_OS_WIN
wchar_t* stringValueRef = (wchar_t*)stringValue.getCharactersPointer();
UInt8 red = (UInt8)(stringStyle.fontColor.r * 255.0f);
UInt8 green = (UInt8)(stringStyle.fontColor.g * 255.0f);
UInt8 blue = (UInt8)(stringStyle.fontColor.b * 255.0f);
status = theVisualGraphics->makeTextureOfStringWin(stringValueRef, stringValue.getNumberOfCharacters(), this->textureName, this->textureWidth, this->textureHeight, this->imageWidth, this->imageHeight, stringStyle.fontNameStr, (UInt16)stringStyle.fontSize, red, green, blue, stringStyle.horizontalAlignment, maxPixelWidth, maxPixelHeight);
#endif
if (this->useRectExtension == false) {
this->textureLogicalWidth = (double)this->imageWidth / (double)this->textureWidth;
this->textureLogicalHeight = (double)this->imageHeight / (double)this->textureHeight;
} else {
this->textureLogicalWidth = (double)this->textureWidth;
this->textureLogicalHeight = (double)this->textureHeight;
}
return status;
}