Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Find least time 3D ballistic flight path between start and goal nodes.
astar-path is a Javascript library that computes a ballistic flight path between a start and goal nodes. The trajectory computed is subject to position, velocity, and acceleration constraints as well as optional user defined node constraints.
Trajectories are defined by a PathNode
array. Each PathNode
has position, velocity and acceleration vectors (i.e., s,v,a).
Here we define start and goal nodes of a desired trajectory. Both start and goal nodes have zero velocity and acceleration:
var start = new PathNode([200,-299,0]); // x,y,z position
var goal = new PathNode([-200,299,0]); // x,y,z position
Trajectories are created by a PathFactory
.
Here we create a three dimensional PathFactory that forbids x or y axis
movement below a zcruise height
of 15 and also forbids z-movement below zero:
var zcruise = 15;
var pf = new PathFactory({
dimensions: 3,
maxVelocity: [25,25,4], // x,y,z velocity
maxAcceleration: [5,5,1], // x,y,z acceleration
maxIterations: 5000,
isConstrained: (node) => node.s[2] < zcruise,
constrain: (n) => {
if (n.s[2] < 0) {
return null; // only paths above bed
}
if (n.s[2] < zcruise) {
if (n.v[0] || n.v[1] || n.a[0] || n.a[1]) {
return null; // no xy movement below zcruise;
}
}
return n;
},
});
Given a start and goal PathNode
, you can quickly create a trajectory by calling the findPath
method:
var result = pf.findPath(start,goal);
Here is a typical trajectory computed by findPath
in under 20ms:
npm install astar-path
FAQs
Find least time 3D ballistic flight path between start and goal nodes.
The npm package astar-path receives a total of 8 weekly downloads. As such, astar-path popularity was classified as not popular.
We found that astar-path demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.