LensDistortionEffect Class

Beta  

Adds a screen-space effect to the selected Viewport to simulate the lens distortion produced by real-world cameras with very wide fields of view. Based on https://www.decarpentier.nl/lens-distortion The effect is improved considerably by enabling anti-aliasing (e.g., via RenderSystem.Options.antialiasSamples at startup, or using the fdt aasamples key-in`).

note Because this effect applies a non-linear transform to each pixel, operations like snapping to geometry will not work properly. Element locate will work however - @see ScreenSpaceEffectSource.sampleSourcePixel.

Extends

Methods

Name Description
constructor(..._args: any[]): LensDistortionEffect    
defineEffect(builder: ScreenSpaceEffectBuilder): void Protected Add uniforms, varyings, etc.  

Inherited methods

Name Inherited from Description
parseAndRun(..._args: string[]): boolean AddEffectTool Run this instance of a tool using a series of string arguments.
run(): boolean AddEffectTool  
register(namespace?: I18NNamespace, i18n?: I18N): void Static AddEffectTool Register this Tool class with the ToolRegistry.

Properties

Name Type Description
effectName Accessor ProtectedReadOnly string    
source Accessor ProtectedReadOnly { fragment: string, sampleSourcePixel: string, vertex: string }    
textureCoordFromPosition Accessor ProtectedReadOnly boolean    
toolId Static string The unique string that identifies this tool.  

Inherited properties

Name Type Inherited from Description
description Accessor ReadOnly string AddEffectTool Get the localized description string from this Tool's class
description Accessor StaticReadOnly string AddEffectTool Get the localized description for this Tool class. This returns the value of "tools." + this.toolId + ".description" from
its registered Namespace (e.g. "en/MyApp.json"). If that key is not in the localization namespace,
AddEffectTool.flyover is returned.
englishKeyin Accessor StaticReadOnly string AddEffectTool Get the English keyin string for this Tool class. This returns the value of "tools." + this.toolId + ".keyin" from
its registered Namespace (e.g. "en/MyApp.json").
flyover Accessor ReadOnly string AddEffectTool Get the localized flyover string from this Tool's class
flyover Accessor StaticReadOnly string AddEffectTool Get the localized flyover for this Tool class. This returns the value of "tools." + this.toolId + ".flyover" from
its registered Namespace (e.g. "en/MyApp.json"). If that key is not in the localization namespace,
AddEffectTool.keyin is returned.
hidden Static boolean AddEffectTool If true, this Tool will not appear in the list from getToolList.
i18n Static I18N AddEffectTool The internationalization services instance used to translate strings from the namespace.
iconSpec Accessor ReadOnly string AddEffectTool Get the iconSpec from this Tool's class.
iconSpec Static string AddEffectTool The icon for this Tool.
keyin Accessor ReadOnly string AddEffectTool Get the localized keyin string from this Tool's class
keyin Accessor StaticReadOnly string AddEffectTool Get the localized keyin string for this Tool class. This returns the value of "tools." + this.toolId + ".keyin" from
its registered Namespace (e.g. "en/MyApp.json").
maxArgs Accessor StaticReadOnly undefined | number AddEffectTool The maximum number of arguments allowed by AddEffectTool.parseAndRun, or undefined if there is no maximum.
If subclasses override AddEffectTool.parseAndRun, they should also override this method to indicate the maximum
number of arguments their implementation expects.
minArgs Accessor StaticReadOnly number AddEffectTool The minimum number of arguments allowed by AddEffectTool.parseAndRun. If subclasses override AddEffectTool.parseAndRun, they should also
override this method to indicate the minimum number of arguments their implementation expects. UI controls can use
this information to ensure the tool has enough information to execute.
namespace Static I18NNamespace AddEffectTool The I18NNamespace that provides localized strings for this Tool.
toolId Accessor ReadOnly string AddEffectTool Get the toolId string for this Tool class. This string is used to identify the Tool in the ToolRegistry and is used to localize
the keyin, description, etc. from the current locale.

Defined in

Last Updated: 11 June, 2024