---
title: "fromRotationTranslationScale | JavaScript maps SDK"
description: "Documentation for MapTiler SDK"
---

> For AI agents: a documentation index is available at [/llms.txt](https://docs.maptiler.com/llms.txt). Markdown versions of all pages are available by appending .md to any URL.

# Function fromRotationTranslationScale

-   fromRotationTranslationScale(  
        out: [mat4](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.mat4/),  
        q: [quat](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.quat/),  
        v: [ReadonlyVec3](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ReadonlyVec3/),  
        s: [ReadonlyVec3](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ReadonlyVec3/),  
    ): [mat4](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.mat4/)[](#fromrotationtranslationscale)
    
    Creates a matrix from a quaternion rotation, vector translation and vector scale This is equivalent to (but much faster than):
    
    ```typescript
    mat4.identity(dest);
    mat4.translate(dest, dest, vec);
    let quatMat = mat4.create();
    mat4.fromQuat(quatMat, quat);
    mat4.multiply(dest, dest, quatMat);
    mat4.scale(dest, dest, scale)
    ```
    
    #### Parameters
    
    -   out: [mat4](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.mat4/)
        
        mat4 receiving operation result
        
    -   q: [quat](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.quat/)
        
        Rotation quaternion
        
    -   v: [ReadonlyVec3](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ReadonlyVec3/)
        
        Translation vector
        
    -   s: [ReadonlyVec3](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ReadonlyVec3/)
        
        Scaling vector
        
    
    #### Returns [mat4](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.mat4/)
    
    out
