我编写了一个动画(在python中),用于三个沙滩球在屏幕上反弹.我现在希望让它们全部碰撞,并能够互相反弹.我真的很感激可以提供任何帮助.
import pygame
import random
import sys
class Ball:
def __init__(self,X,Y):
self.velocity = [1,1]
self.ball_image = pygame.image.load ('Beachball.jpg'). convert()
self.ball_boundary = self.ball_image.get_rect (center=(X,Y))
self.sound = pygame.mixer.Sound ('Thump.wav')
self.rect = self.ball_image.get_rect (center=(X,Y))
if __name__ =='__main__':
width = 800
height = 600
background_colour = 0,0,0
pygame.init()
window = pygame.display.set_mode((width, height))
pygame.display.set_caption("Bouncing Ball animation")
num_balls = 3
ball_list = []
for number in range(num_balls):
ball_list.append( Ball(random.randint(10, (width - 10)),random.randint(10, (height - 10))) )
while True:
for event in pygame.event.get():
print event
if event.type …Run Code Online (Sandbox Code Playgroud) 我的Android应用程序使用了一个特别大的计算,它会使系统崩溃,因为它位于Activity中的UI线程上.我对多线程没什么信心,所以我想得到一些关于如何正确执行的提示.这就是我所拥有的
class ActivtyName extends Activity{
boolean threadcomplete = false;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//stuff
Runnable newthread = new Runnable(){
@Override
public void run() {
doBigComputation();
threadcomplete=true;
}
};
newthread.run();
boolean b = true;
while(b){
if(threadcomplete){
b=false;
startTheApp();
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我很确定我做的不是"正确".(它似乎工作.这个系统不会崩溃).基本上,我不确定如何在没有此布尔值,threadcomplete的情况下告知UI线程newthread已完成计算.有没有"正确"的方法来做到这一点?
我试过了
scrollbar: {
enabled: true
}
Run Code Online (Sandbox Code Playgroud)
但它没有用.
我尝试使用highstocks附带的highcharts.js ..也没用.难道我做错了什么?
我在显示数据库中的数据时出现问题.如果我更新一个对象,有时我会得到旧数据,有时候是新数据.更新功能运行良好(我可以在DB中看到正确的更新),而read函数似乎获得缓存数据.我试图禁用两个缓存,尝试在更新/保存期间打开和关闭会话,但它仍然无法正常工作.User和Store bean都有Lazy提取.谢谢!
阅读功能:
public static List<Store> getStoreByUser(User user)
throws HibernateException {
List<Store> result = null;
Session session = sessionFactory.getCurrentSession();
Transaction transaction = null;
try {
transaction = session.getTransaction();
Criteria criteria = session.createCriteria(Store.class);
criteria.add(Restrictions.eq("userUserID", user));
result = criteria.list();
} catch (HibernateException he) {
logger.error("No Store found for user: = " + user, he);
throw he;
}
return result;
}
Run Code Online (Sandbox Code Playgroud)
更新/保存功能:
public static Integer insertOrUpdateStore(Store store)
throws HibernateException {
Integer id = null;
Session session = sessionFactory.getCurrentSession();
Transaction transaction = null;
try …Run Code Online (Sandbox Code Playgroud) 我有一个长方体,从45度角的佳能射出.身体也以45度角向上旋转,我已将质量设定在身体的前部.
然而,身体在空气中上升,当身体回到地面时,它不会旋转.有没有办法让大众方面先下来?
我的现实世界的例子是,扔一个带有绳子的网球.目前,当重力发挥作用时,弦不会落在球后面.
这是我的'球'
Body = BodyFactory.CreateRectangle(world, ConvertUnits.ToSimUnits(texture.Width), ConvertUnits.ToSimUnits(texture.Height),100f, postition, this);
Body.Mass = 1;
Body.LocalCenter = new Vector2(ConvertUnits.ToSimUnits(Texture.Width), ConvertUnits.ToSimUnits(Texture.Height / 2));
Body.UserData = this;
Body.BodyType = BodyType.Dynamic;
Body.CollisionCategories = Category.All;
Body.CollidesWith = Category.All;
Body.IgnoreGravity = false;
float ang = BarrelJoint.JointAngle;
Body.Rotation = ang;
Run Code Online (Sandbox Code Playgroud)
然后我这样做解雇它:
Body.ApplyLinearImpulse(new Vector2((float)Math.Cos(ang) * 100, (float)Math.Sin(ang) * 100));
Run Code Online (Sandbox Code Playgroud)
我猜我有一些设置或计算我忘了.
我有以下内容:
<iframe id="test">
<script>
variable='hi';
</script>
</iframe>
Run Code Online (Sandbox Code Playgroud)
我需要知道如何通过jquery选择器从顶部窗口访问变量,如$("#test").变量?
我们使用com.amazonaws:aws-android-sdk-cognitoidentityprovider:2.6.8SDK进行基于用户名和密码的登录和注册流程.继这里提到的方法https://docs.aws.amazon.com/cognito/latest/developerguide/tutorial-integrating-user-pools-android.html.注册和登录过程正在按要求运行.
对于Facebook和Google通过联合进行身份验证,我们不希望为此目的使用托管UI,也不希望使用联合身份.我们曾跟随这个链接https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-identity-federation.html.
第一种方法
我们研究CognitoSyncDemo示例应用程序,它使用联合身份,因此我们不得不丢弃它.我们只是在userpool中使用联合.
第二种方法
我们使用了webview并加载了以下网址.URL将我直接带到Facebook,经过身份验证后,它会将我返回到重定向URL,其中包含access_token,auth_type,expires in和id_token.但没有刷新令牌.网址https://yourdomain.auth.us-east-1.amazoncognito.com/oauth2/authorize?redirect_uri=redirect_app_path&response_type=code&client_id="client_id"&identity_provider=Facebook
但使用这种方法存在问题.我无法找到一种方法将访问令牌推送到管理用户会话的SDK中的cognitoUserSession.因此,每次我注册Facebook(使用webview)时,SDK中都没有会话维护.因此,我被重定向到登录视图.如何确保Facebook用户通过cognitoidentityprovider进行身份验证和签名?获取access_token和id_token时如何在SDK中创建用户会话?
第三种方法
我们尝试使用Cognito Auth Demo https://github.com/awslabs/aws-sdk-android-samples/tree/master/AmazonCognitoAuthDemo.为此,我们必须添加另一个库com.amazonaws:aws-android-sdk-cognitoauth.点击登录后,它曾经带我们去托管-ui.在查看类似的IOS项目之后,我们在android库项目中进行了调整(com.amazonaws:用于android的aws-android-sdk-cognitoauth).我们在URI中添加了identity_provider以进行登录.然后我们将我们直接带到Chrome选项卡上的Facebook.验证后,它在我们的应用程序中设置会话.但它有自己的身份验证对象,即AuthSession,但之前我们使用CogintoUserSession进行正常注册.AuthSession没有用户属性,也不提供任何获取用户详细信息或身份验证处理程序.如果我们使用这种方法,那么如何将AuthSession与CognitoUserSession链接并管理应用程序中的用户会话?
摘要
简而言之,我们已经厌倦了AWS样本,它将我们带到了基于Web的托管UI.我们需要使用联合身份识别提供商通过Facebook对用户池进行身份验证.我们需要在Cognito SDK中维护会话,而不会影响我们基于用户名和密码的登录流程.我们希望在按钮点击时直接在我们的应用程序中打开Facebook或在webview上打开Facebook,仅使用Cognito SDK对应用程序进行身份验证并在应用程序中维护会话.
我目前正在学习Python 2.6.5,并且我发现了旧样式类和新样式类.
我知道这些类仍然只是为了向后兼容而存在,并且它们在Python 3中被删除.
所以问题是:作为语言的新手,我是否需要了解经典课程?
PS我正在学习Python 2,因为Python 3在框架中仍然不完全支持,我也想学习一些框架.当框架迎头赶上时,计划将转向Python 3,但在那之前,我是否需要担心旧的样式类?
默认的 highstock 图表具有高度 = 400px。
如何根据图表轴及其大小为自动大小设置高度图表?
请参见下面的示例,导航栏位于音量面板上方。
我知道我可以设置 div 的高度,但我有一个解决方案可以在图表中动态插入/删除轴/系列,并且自动高度图表会很好。
该示例与 Highchart 站点中的 Candlestick/Volume 演示相同,但在 div 容器中没有 height 属性。
// split the data set into ohlc and volume
var ohlc = [],
volume = [],
dataLength = data.length;
for (i = 0; i < dataLength; i++) {
ohlc.push([
data[i][0], // the date
data[i][1], // open
data[i][2], // high
data[i][3], // low
data[i][4] // close
]);
volume.push([
data[i][0], // the date
data[i][5] // the volume
])
}
// set the …Run Code Online (Sandbox Code Playgroud)