how to find a mesh tips I have this mesh:



How can I get the object tips position with a python script?
Consider I don't want the bounding box tips, but the mesh geometry cusp positions

As dr. Sybren pointed out, there are many ways of defining "tips":


The most extreme points on the axis of the first principal component
The points that touch the bounding sphere/box
The vertices where the curvature of the mesh is over a certain threshold
The points where the highest intensity rays cast from the object center meet the object shape (a generalization of 1.?)
The points where the shape-aligned cutting planes have zero area (similar to 3.?)


(I've added a couple myself). 
To avoid complicating matter further I'd stick with 2., points that touch the bounding sphere/box.
Use the convex hull.

The routine to find the minimum volume bounding box involves the creation of the convex hull. It occurs that the extreme points will be vertices on the convex hull. 

Test script. Uses BMesh.ops.convex_hull(...) to create a convex hull mesh where the extreme points will coincide with vertex locations. The two furthest from the origin are chosen and an empty added at those locations. (Assumes the origin is already at center of geometry)

import bpy
import bmesh

context = bpy.context
ob = context.object
me = ob.data
bm = bmesh.new()
bm.from_mesh(me)
ret = bmesh.ops.convex_hull(bm, input=bm.verts)

verts = sorted([v for v in ret["geom"] 
        if isinstance(v, bmesh.types.BMVert)],
        key = lambda v : v.co.length)

for v in verts[-2:]:
    loc = ob.matrix_world * v.co
    bpy.ops.object.empty_add(location=loc)


Notes: simple example above grabs two furthest from origin verts in convex hull. To find the 2nd furthest would find the furthest from the first furthest.  Will be arbitrary for something symmetrical like the sphere, where each point is radius from origin.


Simple test result on oblong