コード例 #1
0
ファイル: SceneBuilder.cpp プロジェクト: floitschG/engine
void SceneBuilder::pushTransform(const Float64List& matrix4, ExceptionState& es)
{
    SkMatrix sk_matrix = toSkMatrix(matrix4, es);
    if (es.had_exception())
        return;
    std::unique_ptr<sky::compositor::TransformLayer> layer(new sky::compositor::TransformLayer());
    layer->set_transform(sk_matrix);
    addLayer(std::move(layer));
}
コード例 #2
0
ファイル: Canvas.cpp プロジェクト: AndroidMars/sky_engine
void Canvas::setMatrix(const Float32List& matrix4, ExceptionState& es)
{
    if (!m_canvas)
        return es.ThrowTypeError("No canvas");

    SkMatrix sk_matrix = toSkMatrix(matrix4, es);
    if (es.had_exception())
        return;
    m_canvas->setMatrix(sk_matrix);
}
コード例 #3
0
void ImageShader::initWithImage(CanvasImage* image,
                                SkShader::TileMode tmx,
                                SkShader::TileMode tmy,
                                const Float64List& matrix4,
                                ExceptionState& es) {
  ASSERT(image != NULL);

  SkMatrix sk_matrix = toSkMatrix(matrix4, es);
  if (es.had_exception())
      return;

  SkBitmap bitmap;
  image->image()->asLegacyBitmap(&bitmap, SkImage::kRO_LegacyBitmapMode);

  set_shader(adoptRef(SkShader::CreateBitmapShader(bitmap, tmx, tmy, &sk_matrix)));
}
コード例 #4
0
ファイル: Canvas.cpp プロジェクト: emembrives/engine
void Canvas::setMatrix(const Float64List& matrix4)
{
    if (!m_canvas)
        return;
    m_canvas->setMatrix(toSkMatrix(matrix4));
}
コード例 #5
0
ファイル: Canvas.cpp プロジェクト: emembrives/engine
void Canvas::transform(const Float64List& matrix4)
{
    if (!m_canvas)
        return;
    m_canvas->concat(toSkMatrix(matrix4));
}