Pixel Manipulation In Corona

“I have no idea how that could be done. (I have asked in other posts… several people feel it ‘should be possible’. As far as I can tell no-one has achieved it…”

For iOS: If you can do it with Objective-C and iOS SDK, it can be done in Enterprise.
For Android: If you can do it in Java and Android SDK, it can be done in Enterprise. [import]uid: 70847 topic_id: 20559 reply_id: 138660[/import]

jeff472 - I’m sorry to hear that you have been waiting on this for a long time. I understand that you are frustrated - especially since we said it “was coming” a while back. There was a lot of that in 2011 and early 2012, but we are doing things differently now. My apologies.

In any case, if you want to give Corona Enterprise a shot, you are more than welcome to. Email me and I’ll get you set up with a 30 day trial (which is standard) and we can discuss. My email is davidATcoronalabs

David [import]uid: 10668 topic_id: 20559 reply_id: 138672[/import]

And just so Jeff doesn’t get the wrong idea, Corona Enterprise is NOT a magic wand for your problem. My understanding is that if you can’t code a getPixel(x,y) in Objective-C, then you can’t do it in Enterprise – because that’s how extra functionality is added there. Native coding, not easy-peasy Lua.

Jay

[import]uid: 9440 topic_id: 20559 reply_id: 138673[/import]

Yes, Jay is correct. You do need to do native coding with Corona Enterprise.

Also, I want to make something clear (lest some people get the wrong idea): I’m not saying we won’t add basic features to Corona SDK and we are therefore forcing people to pony up for Corona Enterprise. That is not our intention. However, the reality is that if you need something that is not in Corona SDK *now*, then that is one way to go. We are still *100%* focused on improving the core engine (core engine is the same in SDK and Enterprise).
[import]uid: 10668 topic_id: 20559 reply_id: 138675[/import]

If you want low level control you can’t use the display.* API since (as mentioned above) it’s not designed for it.
What you’ll need to do is to code your own image library API in Objective-C/Java, put a Lua wrapper around it and then link it to Corona.

What you’ll end up with is a library completely separate from any other Corona API, but it’ll do what you want it to. [import]uid: 70847 topic_id: 20559 reply_id: 138678[/import]

Me again.
I had intended to say my toddle-pips and come back in 6 months to see if anything happened, but of course I receive notifications of responses to the topic, and they have been interesting.

>>For iOS: If you can do it with Objective-C and iOS SDK, it can be done in Enterprise.<<
http://developer.apple.com/library/mac/#qa/qa1509/_index.html

If I have to do it in Objective C, I may as well knuckle down and learn enough to do the whole project in Obj-C
It’s a possibility, but I’m weighing up alternatives to Corona.
I’m pretty sure that I have to write it all again from scratch now.

>>The idea of paying $3,000 for me to load the same image twice, once via the display.API and again via my own lib just to see what the corresponding pixel is at (X,Y) seems a bit out of place here.<<
+1

[import]uid: 108660 topic_id: 20559 reply_id: 138681[/import]

Just so no one gets the wrong idea, enterprise does not cost $3,000. I’m an enterprise user and i can’t remember the exact price now, but it was no way near that.

Either way it would be a lot to pay just for that one feature, but if you do manage to get that working in enterprise you would be able to add many other libraries as well as having the speed of use of Lua. Coding a whole project in Obj-C really doesn’t sound so nice to me :slight_smile: [import]uid: 69826 topic_id: 20559 reply_id: 138683[/import]

jeff472 - As TandG says, Corona Enterprise does not cost $3000. That is an old number that got thrown around before we launched and had set pricing.

We are not trying to “hide” prices somehow. Here are the prices:

  1. If you are an indie/small company, it is $999/developer/year
  2. If you are a larger company, it is $2499/developer/year. This level also adds some workflow tools that are coming soon.

So, again, if you are interested feel free to send me an email (davidATcoronalabs). I can set you up with the 30 day trial.

Thanks,

David [import]uid: 10668 topic_id: 20559 reply_id: 138716[/import]

I’ve been waiting for this feature more than a year… [import]uid: 11702 topic_id: 20559 reply_id: 138213[/import]

i think bitmap manipulation is an important feature missing from the Corona SDK

it’s been almost 2 years now since this feature has been requested by developers. the answer we’ve always got was “it’s on our feature pool”, “we’re considering it”, etc

Eric has pointed out (http://developer.coronalabs.com/forum/2010/05/01/image-manipulation) that it will kill performance. If bitmap manipulation is not compatible with the SDK, Corona Labs should clearly say so and not let the developers hope that one day they will be able to manipulate bitmaps with Corona. [import]uid: 6459 topic_id: 20559 reply_id: 138799[/import]

There are multiple different definitions of what bitmap manipulation means.

It would help us a lot — and more importantly help us understand what you’re trying to do — if you give us some sense of what use case you’re after:

(A) Read r,g,b,a value at x,y (i.e. the original thread question)
(B) Run a filter (e.g. sepia, contrast, etc) on the entire image
© Apply a color transform on the entire image (i.e. tinting + offset)
(D) Render display object to texture
(E) Other use case?

[import]uid: 26 topic_id: 20559 reply_id: 138857[/import]

Well, sorry to say this, but genuinely, goodbye Corona.

Ive struggled with the tool since I bought it.
The debugging is terrible, the stability is questionable, but this one single lack of feature is finally the straw that has broken the camel’s back.
All I needed was getPixel(x,y) returning R,G,B values.
Because of this tiny tiny tiny thing, which is a basic attribute of every language I have coded in for the last 20 years, I have had to suffer endless complaints from my customers.
I have had to reduce the App Store price of my product by 75%
And frankly, Ive had enough.

My Corona licence has now expired and I doubt that I’ll be back.
When the app stops working due to some future change by Apple, thats it.

Im very disappointed. This could have been a real opportunity, but its been a bitter experience.

[import]uid: 108660 topic_id: 20559 reply_id: 138565[/import]

walter, thank you for taking the time to address this
and ask what is it that we need

this is a list of things that i’d like to see supported by Corona

to get and set pixel rgb’s
to copy and set rectangles of pixels
to copy channels
to apply color and geometric (scale, rotate, skew) transforms
to adjust brightness, contrast, saturation
to set filters on a display object (shadow, blur, glow, sharpen)
to flood fill an image
to rotate an image around the axes (perspective)
to create noise
to dispose
[import]uid: 6459 topic_id: 20559 reply_id: 139090[/import]

Thanks tetu, this is helpful as we prioritize what we work on first in the next-gen graphics engine. [import]uid: 26 topic_id: 20559 reply_id: 139091[/import]

I have a good app idea but I need image processing like filters, edge detection etc.
So as jeff472 wrote: all I need is getPixel(x,y).

[import]uid: 193524 topic_id: 20559 reply_id: 138580[/import]

Sorry to see you go. But if your app has the potential of making some real money why not just go enterprise and add the feature yourself [import]uid: 7911 topic_id: 20559 reply_id: 138582[/import]

All I can say is that anybody leaving Corona at this point in time is their loss.
Many things are “bubbling under the surface” at the moment, and when Project Gluon is made available you’ll see a whole new world of Corona and 3rd party plugins.

…and I have a feeling that image handling will be one of them :slight_smile:
[import]uid: 70847 topic_id: 20559 reply_id: 138587[/import]

>>why not just go enterprise and add the feature yourself<<

I have no idea how that could be done. (I have asked in other posts… several people feel it ‘should be possible’. As far as I can tell no-one has achieved it: and I have offered money for a solution.)

I checked out the limited information about enterprise 6 months ago, couldn’t begin to work out how to do it myself. (Couldn’t work out how much extra Enterprise was going to cost me to add one new function, either, as it happens. )

>>when Project Gluon is made available you’ll see a whole new world of Corona and 3rd party plugins.
…and I have a feeling that image handling will be one of them :slight_smile:
<<

Possible ‘jam tomorrow’, eh?
Carlos hinted it was ‘coming’ last February.

I’ll pop back every 6 months or to see if you were right.
As it stands, I’m resigned to admit that I should have checked every essential function before I spent months in development.
[import]uid: 108660 topic_id: 20559 reply_id: 138613[/import]

“I have no idea how that could be done. (I have asked in other posts… several people feel it ‘should be possible’. As far as I can tell no-one has achieved it…”

For iOS: If you can do it with Objective-C and iOS SDK, it can be done in Enterprise.
For Android: If you can do it in Java and Android SDK, it can be done in Enterprise. [import]uid: 70847 topic_id: 20559 reply_id: 138660[/import]

jeff472 - I’m sorry to hear that you have been waiting on this for a long time. I understand that you are frustrated - especially since we said it “was coming” a while back. There was a lot of that in 2011 and early 2012, but we are doing things differently now. My apologies.

In any case, if you want to give Corona Enterprise a shot, you are more than welcome to. Email me and I’ll get you set up with a 30 day trial (which is standard) and we can discuss. My email is davidATcoronalabs

David [import]uid: 10668 topic_id: 20559 reply_id: 138672[/import]