GetPointFromDistanceRotation

From Multi Theft Auto: Wiki

Jump to: navigation, search

This function takes a set of XY coordinates, a distance and a rotation argument. It returns XY coordinates of the point that is the given distance away from the given point, in the given direction.

Syntax

float, float getPointFromDistanceRotation(float x, float y, float dist, float angle)

Required Arguments

  • x: The X coordinate of the starting point.
  • y: The Y coordinate of the starting point.
  • dist: The distance from the starting point to the target point.
  • angle: The direction from the starting point to the target point.

Code

Click to collapse [-]
Function source

function getPointFromDistanceRotation(x, y, dist, angle)
 
    local a = math.rad(90 - angle);
 
    local dx = math.cos(a) * dist;
    local dy = math.sin(a) * dist;
 
    return x+dx, y+dy;
 
end

Example

Click to collapse [-]
Server

This command surrounds a player with peds.

addCommandHandler("surround",
function (player)
 
  local x,y,z = getElementPosition(player);
 
  for i=1, 8 do
    local newX, newY = getPointFromDistanceRotation(x, y, 2, 360 * (i/8));
    createPed(10, newX, newY, z)
  end
 
end
);

Author: robhol.

See Also

  • callClientFunction » This function allows you to call any clientside function from the server's side.
  • callServerFunction » This function allows you to call any server-side function from the client's side.
  • centerWindow » This function center the window in any resolution.
  • Check » This function checks if it's arguments are of the right types and calls the error-function if one isn't.
  • coroutine.resume » Fix for hidden coroutine error messages
  • dxDrawColorText » This function draws a dx text with #RRGGBB color codes support.
  • dxDrawGifImage » This function simulates the effect of a GIF image by using image sprites.
  • dxDrawImage3D » This function draws a 3D image.
  • dxDrawRectangle3D » This function draws a 3D rectangle.
  • dxGetFontSizeFromHeight » This function calculate a font size from given height for dxDraw.
  • dxGetRealFontHeight » Accurately measures the pixel height of a font.
  • findRotation » Takes two points and returns the direction from point A to point B.
  • FormatDate » Formats a date on the basis of a format string and returns it.
  • GenerateString » With this function you can generate a random string with any characters.
  • getAge » This function calculates the age of a birthday.
  • getAlivePlayers » This function returns all the alive players by a client side, so you can store them into a Gridlist or something like that, faster.
  • getAlivePlayersInTeam » This function returns a table of the alive players in a team.
  • getCursorMoveOn » This function checks in which way the cursor is currently moving.
  • getDistanceBetweenPointAndSegment2D » Takes point coordinates and line (a segment) starting and ending coordinates. It returns the shortest distance between the point and the line.
  • getElementSpeed » This function allows you to get element speed in kph or mph units.
  • getJetpackWeaponsEnabled » This function returns a table of enabled weapons usable on a jetpack.
  • getOffsetFromXYZ » This function allows you to take an entity and a position and calculate the relative offset between them accounting for rotations.
  • getOnlineAdmins » This function will give the online admins.
  • getOnlineStaff » Returns all online staff, names separated by two spaces.
  • getPlayerFromNamePart » This function allows you to get player From his Name part.
  • getPlayersInPhotograph » This function gets all the players in a photograph.
  • getPointFromDistanceRotation » Finds a point based on a starting point, direction and distance.
  • getResourceSettings » This function returns a table of the resource settings.
  • getTimestamp » With this function you can get the UNIX timestamp.
  • getXMLNodes » Returns all children of a node
  • getVehicleRespawnPosition » This function allows you to get the spawn position of a vehicle.
  • guiComboBoxAdjustHeight » Adjusts the combobox to have a correct height.
  • IfElse » Returns one of two values based on a boolean expression.
  • isElementInPhotograph » This function checks if an element was in the player's camera picture.
  • isElementInRange » This function allows you to check is the element's range to the main point is smaller than (or as big as) the maximum range.
  • isElementMoving» This function checks if an element is moving.
  • isPedAiming» This function checks if a ped is aiming.
  • isPlayerInTeam » This function check if the player in the team.
  • isLeapYear » Checks if the given year is a leap year.
  • isVehicleOnRoof » This function checks whether vehicle is on roof.
  • iterElements » Returns an iterator for your for loops saving time typing ipairs( getElementsByType( type ) ), instead you type: iterElements( type ).
  • math.round » Rounds a number whereas the number of decimals to keep and the method may be set.
  • multi_check » This function checks one element to many, handy and clean.
  • onVehicleWeaponFire » This code implements an event that is triggered when a player in a vehicle fires a vehicles weapon.
  • setElementSpeed » This function allows you to set moving element speed in kph or mph units.
  • setTableProtected » Protects a table and makes it read-only.
  • setVehicleGravityPoint » This clientside function sets a vehicle's gravity in the direction of a 3 dimensional coordinate with the strength specified.
  • smoothMoveCamera » This clientside function allows you to create a cinematic camera flight.
  • string.count » This function counts a text from a text.
  • string.explode » This function splits a string at a given separator pattern and returns a table with the pieces.
  • switch » This function allow the value of a variable or expression to control the flow of program execution via a multiway branch.
  • table.copy » This function copies a whole table and all the tables in that table.
  • table.compare » This function check if both tables is equal.
  • table.empty » This function check is empty table or not.
  • table.map » This function goes through a table and replaces every field with the return of the passed function, where the field's value is passed as first argument and optionally more arguments.
  • table.random » This function retrieves a random variable from a table.
  • table.size » Finds the absolute size of a table.
  • var dump » This function outputs information about one or more variables using outputConsole()
  • RGBToHex » This function returns a string representing the color in hexadecimal.
  • toHex » This function converts a decimal number to a hexadecimal number, as a fix to be used clientside.
  • wavelengthToRGBA » This function converts a phisical wavelength of light to a RGBA color.
  • convertNumber » This function converts large numbers and adds commas to it. (Example: 100000 -> 100,000)
  • getPlayerFromSerial » This function gets an online player from their serial.
  • mathNumber » This function is a workaround for the clientside floating-point precision of 24-bits
  • getPlayersByData » This function gets players who have data name you passed to it.